专利名称:基于真实地址的可信p2p电子邮件传输方法
技术领域:
基于真实地址的可信P2P电子邮件系统属于互联网安全通信技术领域,涉及互联网邮件传输技术,同时还涉及IPv4与IPv6网络之间互联互通技术。
背景技术:
电子邮件系统一直是互联上重要的典型应用之一,已经成为现代人生活和工作不可缺少的组成部份。
现有电子邮件系统存在一些不可忽视的安全性问题。首先,现有邮件系统采用集中式的C/S结构,当邮件服务器受到攻击或其它原因而拒绝服务时,整个系统就无法工作了;其次,现有电子邮件系统中进行身份认证的密钥都要频繁地在网络上进行传递,极易被截获,从而使邮件信息泄密;第三,现有邮件系统中的邮件都集中保存在邮件服务器端,对邮件服务器造成巨大的存储压力,也给邮件信息带来巨大安全隐患。
现有电子邮件系统存在的主要问题如垃圾邮件和邮件病毒等归根到底是由于两方面原因造成的从主观上来说,现有邮件系统缺乏对发信人的源地址进行认证,对发信人真实邮件地址追查机制的缺失是电子邮件系统中各类垃圾邮件和不负责任行为的根源;另一方面,从客观上来说,由于IPv4地址空间不够,导致大量NAT地址,为伪造邮件地址提供了方便之门,进一步加剧了垃圾邮件与邮件病毒的大量传播,同时IPv4地址不足也是现有邮件系统不得不采用C/S结构的主要原因,在C/S结构下,邮件系统经常受到邮件服务器单点故障和存储压力等的困惑。
所有这些问题都可以在基于真实地址的P2P电子邮件系统中得到很好的解决。同时,由于IPv4地址即将耗尽,向IPv6的过渡已成必然,而且时间越来越紧迫,目前绝大多数用户都使用Windows操作系统,而到目前为止,世界上还没一个支持Windows系统的IPv6电子邮件系统客户端软件。IPv6提供了巨大的地址空间,为可信P2P电子邮件系统的实施提供了可能,同时,基于可信IPv6地址的网络基础设施也可以在技术上对发信人源地址的认证提供支持。
发明内容
本发明的目的在于充分利用下一代互联网协议IPv6所提出的良好的体系结构设计以及底层真实IPv6地址基础设施所提供的功能,通过安全域名服务实现用户的邮件账号、个人域名与真实地址的绑定,在此基础上设计实现点对点(P2P)电子邮件通信协议和原型系统,简化邮件系统的安全认证模式,从原理上杜绝假冒源地址的垃圾邮件,提高邮件系统的安全性和邮件传输的效率,同时实现IPv6用户与IPv4用户之间的邮件互发。
本发明的特征在于,所述方法依次含有以下步骤步骤(1),在一个IPv6网络中,构造一个基于真实地址的可信P2P电子邮件系统,其中含有发送端,为邮件发送方,完成邮件消息的制作与封装,并把邮件消息通过P2P方式发送给邮件接收方,或者通过邮件网关发送给邮件接收方,同时把已发送邮件保存在本地邮箱的已发送邮箱中;接收端,为所述邮件接收方,完成对邮件发送方的身份认证和邮件接收,或者通过所述邮件网关接收邮件,并把接收到的邮件保存在本地收件箱中;邮件网关,发送端与接收端各有一个,当所述接收端不在线时,负责接收并暂时保存发送给接收端的邮件,当接收端上线后从邮件网关接收邮件消息;同时该邮件网关还负责与传统IPv4邮件服务器进行通信,实现IPv4与IPv6之间的邮件传输;域名服务器,独立于发送端和接收端,在用户登录网络时,负责绑定邮件账号、个人域名与真实IP地址,同时负责邮件账号到真实IP地址的查询;步骤(2),所述P2P电子邮件传输方法在所述系统依次按以下步骤实现步骤(2.1),启动所述P2P邮件系统,接收端登录网络,自动建立套接字,开始监听8636端口;步骤(2.2),发送端登录网络发送邮件时,通过域名服务器查询接收端的IP地址,然后连接到该IP地址的8636端口,向接收端发送含有自己IP地址S.IP的连接请求,连接成功后,转下一步,否则转步骤(2.1);步骤(2.3),发送端把自己的邮件账号S@dom.A发送给接收端,然后等待接收端进行身份认证;步骤(2.4),当接收端收到发送端的连接请求时,一方面通过该连接请求记录下发送端的IP地址S.IP,另一方面接收发送端所发送的邮件账号S@dom.A;步骤(2.5),接收端通过域名服务器把发送端的邮件账号S@dom.A转换为发送端的个人域名S.dom.A,并通过该域名服务器查询S.dom.A所对应的IP地址S.IP_1;步骤(2.6),若S.IP≠S.IP_1,则接收端向发送端返回认证失败消息,并结束通信过程;步骤(2.7),若S.IP=S.IP_1,则接收端同发送端返回认证成功消息;步骤(2.8),发送端接收接收端的认证结果信息;
若发送端未通过接收端的认证,便结束与接收端的通信,P2P邮件发送失败;若发送端通过接收端的认证,便与接收端进行版本协商;步骤(2.9),版本协商成功后,发送端把邮件消息发送给接收端;步骤(2.10),邮件消息发送结束后,结束双方通信过程,断开连接;步骤(2.11),若连接失败,则发送者把邮件消息通过SMTP协议发送到本域的邮件网关,接收端则通过自己的邮件网关用POP3协议接收来自发送端邮件网关发来的邮件消息。
目前,发明人已经实现了本发明的一个原型系统,并且在CNGI-CERNET2上进行了一系列的试验,取得了较好的效果,该系统具有以下优点●使邮件通信的身份认证过程更简单、更安全由于有了真实IP地址的保障,该协议中,通信双方的认证过程更为简单,同时也避免了传统邮件协议中身份认证过程中认证密钥需要频繁在网络上传输,从而导致邮件信息泄密。
●杜绝假冒源地址的垃圾邮件本发明中,发信方使用假冒地址是不能进行邮件发送的,从而避免了传统邮件系统中的令人头痛的垃圾邮件问题。
●解决了现有邮件系统中的服务器单点故障问题;避免了身份认证密钥在网上传播,减少了邮件泄密的机会;P2P邮件系统中邮件主要保存在邮件的发送端与接收端,有效减轻了邮件服务器的存储压力●当前国内外第一个基于Windows系统的IPv6图形界面电子邮件客户端本发明中实现的P2P邮件系统是当前国内外第一套同时支持IPv4和IPv6的电子邮件系统客户端。
●兼容现有电子邮件系统在设计过程中充分考虑了与现有邮件系统的兼容性,该系统不仅可以收发P2P邮件还可以接收与发送现有邮件系统的邮件消息,使得接收端不在线时仍能通过邮件服务器向你发送邮件消息。因而系统与现有邮件系统之间具有良好的互连互通性能。
●IPv4邮件用户与IPv6邮件用户可以透明地通信为了顺利实现电子邮件系统从IPv4到IPv6的无缝过渡,本发明中所实现的P2P邮件系统在每个自治域开发部署了一套IPv4/v6邮件服务器网关,使得IPv6邮件客户端可以方便地与现有IPv4邮件客户端通信。
图1.基于真实地址的可信P2P邮件系统结构图;图2.基于真实地址的P2P邮件系统结构和功能模块;图3.基于真实地址的P2P邮件系统工作原理;图4.基于真实地址的P2P电子邮件通信协议主要会话过程;图5.接收端在线时的P2P邮件发送;图6.接收端不在线时的邮件发送;图7.假冒源地址的邮件发送;图8.IPv6用户与IPv4用户之间的邮件互发;图9.通过邮件网关接收邮件。
具体实施例方式
下面对本发明进行详细的说明。
一.基于真实地址的P2P邮件系统结构与相关实体如图1所示,本系统主要包含以下通信实体发送端(S)即邮件发送方,主要完成邮件消息的制作与封装,并将邮件消息通过P2P方式发送给邮件接收方或者通过邮件网关发送给接收方;同时将已发送邮件保存在本地邮箱的已发送邮箱中。
接收端(R)即邮件接收方,主要完成对邮件发送端的身份认证和邮件接收,或者能通过邮件网关接收邮件,并将接收到的邮件保存在本地收件箱中。
邮件网关(EG)当接收端R不在线时,负责接收并暂时保存发送给R的邮件,当R上线后从EG接收邮件消息;同时该邮件网关还负责与传统IPv4邮件服务器进行通信,实现IPv4与IPv6系统之间的邮件通信。
域名服务器(DNS)域名服务器负责绑定邮件账号、个人域名与真实IP地址,同时负责邮件账号到真实IP地址的查询。
二.基于真实地址的P2P邮件系统的主要功能模块如图2所示基于真实地址的P2P邮件系统主要包括以下功能模块1.用户界面用户界面是整个系统的管理界面,负责完成系统设置和邮件的发送与接收等操作。
2.P2P邮件发送与接收以P2P方式处理邮件消息的发送与接收。
3.邮件消息编/解码主要负责对邮件消息的编码与解码工作,以方便邮件的传输与浏览。
4.邮件存储主要负责邮件的本地储存,接收到的邮件被保存在“收件箱”中;成功发送的邮件保存在“已发邮件”中;未发送成功的邮件保存在“发件箱”中,等待再次发送;临时删除的邮件被暂存在“垃圾箱”中。
5.SMTP与POP3主要负责将邮件通过SMTP协议发送到邮件网关,同时通过POP3协议接收来自邮件网关的邮件消息。
6.IPv6/v4邮件网关一方面,它负责接收与保存不在线用户的邮件消息,另一方面用户与现有邮件系统的互连互通。
三.基于真实地址的P2P邮件系统工作原理与流程如图3所示,基于真实地址的P2P邮件系统的基本工作原理是,当邮件接收端在线时,邮件消息通过P2P方式进行收发,如果接收端不在线,则将邮件消息发送到邮件网关,当接收端上线后直接从邮件网关接收邮件。
P2P邮件发送与接收包括发送端与接收端两个实体,以下分别就发送端与接收端的工作流程进行描述1.发送端S(1)用户单击“用户界面”上的“撰写”按钮,系统启动“新邮件”窗口(2)用户填写“收件人”,“抄送人”和“附件”等信息后,单击“发送”按钮(3)系统通过DNS查询“收件人”等的IP地址,然后连接相应IP地址的8636端口(4)如果连接失败,表明接收端R不在线,邮件将被发送到邮件网关,由R上线后通过邮件网关收取该邮件(5)如果连接成功,表明R在线(6)发送端S将自己的邮件账号S@dom.A发送给R,等待R进行身份认证(7)S接收R的认证结果信息(8)如果未通过R的认证,S与R的通信结束,P2P发送失败(9)如果通过R的认证,接下来S与R进行版本协商(10)版本协商成功后,S将邮件消息(信体)发送给R(11)邮件消息发送结束后,S将所发送的邮件消息存入本地邮箱中的“已发送邮箱”中存档备查。
2.接收端R(1)当P2P邮件系统启动时,作为接收端(R)系统自动建立套接字,开始监听8636端口。同时,还可以通过单击“用户界面”上的“接收”按钮直接从邮件网关接收邮件消息。
(2)当R接收到发送端S的连接请求时,R一方面通过该连接记录下S的IP地址S.IP;另一方面接收S发送的邮件账号S@dom.A(3)S将邮件账号S@dom.A转换为个人域名S.dom.A(用户登录网络时DNS系统会自动将当前IP地址与个人域名进行绑定),并通过DNS查询S.dom.A所对应的IP地址S.IP_1(4)如果S.IP≠S.IP_1,表明S使用伪造源地址进行通信,R向S返回认证失败消息,并结束通信过程(5)如果S.IP=S.IP_1,表明S使用真实源地址进行通信,R向S返回认证成功消息(6)如果通过身份认证,接下来S与R进行版本协商(7)版本协商成功后,R接收来自S的邮件消息(8)邮件消息接收结束后,R将所接收的邮件消息存入本地邮箱中的“收件箱”中存档备查。
为了对本发明的性能进行论证,我们设计了以下实验场景,分别展示R在线时的P2P邮件收发,R不在线时通过邮件网关进行邮件收发,假冒源地址的邮件发送,以及IPv4邮件用户与IPv6邮件用户的邮件收发。
这里,我们假设发送方S为ibm@cernet.tunnet.edu.cn接收方R为liuwu@thu.tunnet.edu.cn,它们所登录网络时所用的IPv6地址分别为2001:da8:200:9002:211:25ff:fe2f:9702和2001:250:cccc:3::5:191.接收方在线时的邮件发送与接收如下图所示,当接收在线时,如果顺利通过身份认证,邮件会通过P2P的方式直接发送到接收方,并显示在接收方的“收件箱”中。
2.接收方不在线时的邮件发送与接收系统默认采用P2P方式发送邮件,如果对方不在线,系统会提示对方不在线,然后将邮件消息发送到邮件网关,当对方上线后,可以从邮件服务器接收该邮件,如图6所示是,对方不在线时的发送过程。
3.假冒源地址发送邮件如图7所示,当发送方使用别人的账号发送邮件时,系统会阻止其邮件发送过程。
4.IPv6用户与IPv4用户之间的邮件互发IPv6用户与IPv4用户互发邮件。这里,为了更具说服力,我们将发信地址和收信地址分别用IPv6地址和IPv4地址来表示,您在使用时可以用IPv6或IPv4的邮件账号互发邮件。该例子表明,本系统可以使IPv6用户和IPv4用户相互通信,见图8。
5.邮件接收本系统是目前世界上第一个支持IPv6的基于MS Windows操作系统的图形界面邮件客户端,配置好邮件账号后,它可以通过邮件网关同时接收IPv4和IPv6邮件服务器的邮件消息。
接收邮件操作步骤(1)如果有必要,重新配置邮件账号;(2)单击工具栏上的“接收”按钮;(3)系统自动弹出“接收邮件”窗口,并开始连接邮件服务器,然后开始接收邮件,如图9所示;(4)接收过程中或接收完毕后单击“取消”,退出“接收邮件”窗口;(5)单击主窗口左窗格中的“收件箱”;(6)系统会在右窗格中显示所接收到的邮件列表,单击相应邮件主题,系统会在右下窗格中显示邮件内容;(7)如果有附件,在标题栏的最左边会有一个附件标志,同时,标题栏的最右边会显示附件数量;(8)单击右窗格中间窗格最右边的附件下拉按钮并选择需要保存的附件文件名,可以将附件保存在本地硬盘。
权利要求
1.基于真实地址的可信P2P电子邮件传输方法,其特征在于,所述方法依次含有以下步骤步骤(1),在一个IPv6网络中,构造一个基于真实地址的可信P2P电子邮件系统,其中含有发送端,为邮件发送方,完成邮件消息的制作与封装,并把邮件消息通过P2P方式发送给邮件接收方,或者通过邮件网关发送给邮件接收方,同时把已发送邮件保存在本地邮箱的已发送邮箱中;接收端,为所述邮件接收方,完成对邮件发送方的身份认证和邮件接收,或者通过所述邮件网关接收邮件,并把接收到的邮件保存在本地收件箱中;邮件网关,发送端与接收端各有一个,当所述接收端不在线时,负责接收并暂时保存发送给接收端的邮件,当接收端上线后从邮件网关接收邮件消息;同时该邮件网关还负责与传统IPv4邮件服务器进行通信,实现IPv4与IPv6之间的邮件传输;域名服务器,独立于发送端和接收端,在用户登录网络时,负责绑定邮件账号、个人域名与真实IP地址,同时负责邮件账号到真实IP地址的查询;步骤(2),所述P2P电子邮件传输方法在所述系统依次按以下步骤实现步骤(2.1),启动所述P2P邮件系统,接收端登录网络,自动建立套接字,开始监听8636端口步骤(2.2),发送端登录网络发送邮件时,通过域名服务器查询接收端的IP地址,然后连接到该IP地址的8636端口,向接收端发送含有自己IP地址S.IP的连接请求,连接成功后,转下一步,否则转步骤(2.1);步骤(2.3),发送端把自己的邮件账号S@dom.A发送给接收端,然后等待接收端进行身份认证;步骤(2.4),当接收端收到发送端的连接请求时,一方面通过该连接请求记录下发送端的IP地址S.IP,另一方面接收发送端所发送的邮件账号S@dom.A;步骤(2.5),接收端通过域名服务器把发送端的邮件账号S@dom.A转换为发送端的个人域名S.dom.A,并通过该域名服务器查询S.dom.A所对应的IP地址S.IP_1;步骤(2.6),若S.IP≠S.IP_1,则接收端向发送端返回认证失败消息,并结束通信过程;步骤(2.7),若S.IP=S.IP_1,则接收端同发送端返回认证成功消息;步骤(2.8),发送端接收接收端的认证结果信息;若发送端未通过接收端的认证,便结束与接收端的通信,P2P邮件发送失败;若发送端通过接收端的认证,便与接收端进行版本协商;步骤(2.9),版本协商成功后,发送端把邮件消息发送给接收端;步骤(2.10),邮件消息发送结束后,结束双方通信过程,断开连接;步骤(2.11),若连接失败,则发送者把邮件消息通过5MTP协议发送到本域的邮件网关,接收端则通过自己的邮件网关用POP3协议接收来自发送端邮件网关发来的邮件消息。
全文摘要
本发明属于互联网邮件,尤其是IPv4与IPv6之间的互联互通技术领域,其特征在于,独立于IPv6网络之外建立一个域名服务器以绑定邮件账号、个人域名和真实IP地址,负责发送与接收双方从账号到真实地址的查询。当接收方在线时,接收方根据发送方连接请求中的IP地址与通过域名服务器根据发送方邮件账号查询所得的IP地址是否一致来对发送方进行认证,以决定是否接收基于P2P的邮件消息;当接收方不在线时,发送方直接通过邮件网关向接收方发送邮件消息。本发明在兼容现有电子邮件系统的同时,具有杜绝假冒源地址的垃圾邮件、简化身份认证过程以及克服服务器单点故障、减少邮件泄密机会、减少服务器压力等优点。
文档编号H04L29/06GK1972188SQ20061011370
公开日2007年5月30日 申请日期2006年10月13日 优先权日2006年10月13日
发明者段海新, 刘武, 陈俏, 梁媛, 吴建平 申请人:清华大学