客户端设备、邮件系统、程序以及记录介质的制作方法

文档序号:7642733阅读:217来源:国知局
专利名称:客户端设备、邮件系统、程序以及记录介质的制作方法
技术领域
本发明涉及一种着重于通信中的安全性的客户端系统和邮件系统, 更具体来说,本发明涉及一种能够有力地防止不正当的干扰的客户端系 统、邮件系统以及实现所述系统的计算机程序,所述干扰比如是数据的 "泄露,,、"篡改"和"伪装"以及对因特网和实现其的计算机上的数 据的"逼近"或"攻击"。
背景技术
近年来,利用因特网的通信在社会上快速发展,这是因为至少拥有 一台个人计算机的任何人仅仅通过连接到网络就能够访问所述网络上 的计算机。另一方面,随着因特网通信的发展,与之相伴的社会问题也 变得日益严重,其中黑客或闯入者会入侵其他人的计算机系统以便窥探 软件和数据并且对其实施篡改或破解。
说到不正当干扰的一种具体情况,首先通过经由所述网络发送大量 消息来干扰系统从而干扰所述计算机系统的操作,从而使得所述中央系 统不可用。当主机由于该干扰而变得过载时,还有可能发生所述系统关 闭的情况。
此外还有一种被称作"未经授权的访问及伪装,,的不正当干扰,其 中通过获取所述主机中的口令来盗取机密信息以及对信息实施篡改及 破解等等。在这种干扰中存在一种非常严重的情况,其中对由所述计算 机所拥有的信息进行任意重写以便欺骗他人。此外还会发生由间谍软件 所导致的不正当活动,其中特定的个人计算机被秘密入侵,并且诸如邮 件地址和口令之类的个人机密数据被利用。此外还有 一种所谓的窃听的
可能性,如上所述,这种情况频繁发生以便不正当地窥探连接到所述网 络的计算机中的数据库内容。
此外还有可能发生故意盗取站内的或者服务器的管理源内的个人 信息的行动,并且可能会由于间谍潜入公司等内部而发生诸如网络恐怖 主义之类的危机。
此外,比如投放"病毒,,之类的不正当千扰近来也越来越多,其中所谓的病毒是导致他人的计算机发生故障的程序。如果被用来在家中收 发邮件的个人计算机感染了所投放的这种病毒,那么当其连接到公司内 的计算机时,所述公司内的全体计算机都会感染所述病毒,并且/或者所 迷病毒将破解所述计算机中的文件,此外整个网络也可能会故障。
因此,在利用传统的TCP/IP (传输控制协议/互联网协议)或UDP
(用户数据报协议)的因特网上的通信中,利用被称作IPsec (IPsec:用 于互联网协议的安全性体系结构)或SSL (安全套接字层)的加密通信 以作为一种防止数据的"泄露"、"篡改,,等等的功能。
IPsec的特征不仅在于仅仅加密特定的应用,而且还在于在IP层加 密发送自所述主机的每一条通信。按照这种方式,用户有可能在不知晓 所述应用的情况下具有安全的通信。此外,IPsec使改变被使用的加密 算法而无需改变其自身的结构变得可能,以便其可在将来被使用。
此外,通过利用SSL,有可能使得客户端和服务器在所述网络上彼 此进行认证,并且有可能通过加密来交换高度机密的信息(比如信用卡 信息等等)。按照这种方式,有可能防止窃听数据、重发攻击(通过窃 听重复攻击将在网络上多次传过的发送数据)、冒充(通过冒充另一个 人自身进行通信)、篡改数据等等。
在本发明中所使用的加密通信当中,把加密功能添加到作为传输层 (OSI的第四层)的TCP层中。所述传输层是用于实现执行在各自节点 上的两个过程之间的没有错误的假设通信路径的协议层。有可能由网络 层发送数据,但是无法保证所述数据将肯定会到达目的地。此外,也无 法保证所述数据将按照所发送的顺序正确到达。因此,提供一条没有错 误的通信路径的是传输层,以便其容易被用于应用。本发明的发明人在 世界上首次提出了通过把加密功能添加到所述第四层的传输层中而实 现的可以防止来自外部的不正当入侵的通信系统的 一 个例子,并且本发 明的发明人将这种加密通信系统命名为"TCP2"(参见专利文献l)。
专利文献l: WO2005/015827。
发明的公开内容
在所述专利文献1中所描述的发明被限制为利用TCP2的通用加密 通信系统、通信方法、通信设备和通信程序,而配备有TCP2的邮件系 统还没有被实现。
5本发明的 一 个目的是使用通信系统提供 一 种具有加密功能的邮件 系统以及实现所述邮件系统的程序,其中所述通信系统利用了本发明的 发明人先前所提出的"TCP2"。
更具体来说,本发明的所述目的是提供一种电子邮件系统及其程 序,其中可以通过在所述电子邮件的发送侧客户端和接收侧客户端上安
装TCP2来实施端到端加密的电子邮件发送/接收。
为了解决上面描述的问题并且实现本发明的所述目的,提供一种用 在本发明的邮件系统中的客户端设备,其中所述邮件系统连接到网络并 且包括执行在多个客户端设备间的邮件通信的现有的邮件收发器 (mailer)。所述客户端设备包括TCP2驱动器和除了所述现有的邮件收 发器之外的TCP2邮件系统应用单元,其中所述TCP2驱动器包括TCP2 核心和邮件系统核心。所述TCP2核心包括用于识别发送自所述现有的 邮件收发器或者SMTP和P0P3协议的电子邮件的分组并且用于将其发 送到所述邮件系统核心的装置。所述邮件系统核心包括用于对将被发 送及接收的邮件进行加密或解密的装置;用于实施与其他客户端设备的 密钥交换的装置;用于保存所述POP3的IP地址和端口以及所述SMTP 的IP地址和端口的装置;用于保存用户ID和口令以及发送方和接收方 的电子邮件地址的装置;用于保存通过所述密钥交换所形成的密钥的装 置;以及用于选择及删除加密的邮件、HTML邮件或者附件的装置。所 述TCP2邮件应用单元包括用于显示与发送自所述邮件系统核心的电子 邮件有关的密钥状态以及用于对所述电子邮件的状态(其中包括所述电 子邮件的加密或未加密)、邮件类型、附件以及发送方的邮件地址进行 列表显示的装置,所述TCP2邮件应用单元还包括用于明文显示由所述 现有的邮件收发器接收到的加密邮件的装置。由所述TCP2驱动器来选 择及处理经由所迷网络接收到的电子邮件,并且随后将其提供到所述现 有的邮件收发器,并且把经由所述网络从所述现有的邮件收发器发送到 另一个客户端设备的邮件设置成在由所述TCP2驱动器确认了所述接收 方的所述另一个客户端设备之后发送所述邮件。
本发明的邮件系统是一种其中在连接到网络并且具有现有的邮件 收发器的多个客户端设备之间实施邮件传送的邮件系统。所述客户端设 备包括TCP2驱动器以及除了所述现有的邮件收发器之外的TCP2邮件 应用单元,其中所述TCP2驱动器包括TCP2核心和邮件系统核心。所述TCP2驱动器的TCP2核心连接到所述现有的邮件收发器或者所述网 络,并且其被配置成把发送自邮件服务器的SMTP或P0P3协议的电子 邮件的分组发送到所述邮件系统核心。所述邮件系统核心被配置成执行 以下操作对所发送及接收的邮件实施加密或解密;实施与发送方或接 收方的密钥交换;保存所述POP3的IP地址和端口号、所述SMTP的IP 地址和端口号、用户ID和口令、所述发送方或所述接收方的电子邮件 地址;把通过所述密钥交换所形成的密钥存储在存储介质上;以及选择 性地删除所接收的电子邮件。所述邮件系统的特征在于,所述TCP2邮 件系统应用单元实施与发送自所述邮件系统核心的电子邮件有关的密 钥状态的显示,并实施对所发送及接收的邮件的列表显示和对由所述现 有的邮件收发器所接收到的加密邮件的明文显示。
此外,在彼此通信的每一个客户端设备上利用TCP2邮件系统功能 实现用在本发明的邮件系统中的邮件传送程序,所述TCP2邮件系统功 能包括3个功能TCP2核心、邮件系统核心以及除了所述现有的邮件 收发器功能之外的TCP2邮件应用。所述TCP2核心的功能连接到网络, 并且包括用于识别发送自所述现有的邮件收发器或者邮件服务器协议 SMTP或POP3的电子邮件的分组以及用于将其发送到邮件系统核心的 功能。此外,所述邮件系统核心的功能包括用于执行以下操作的功能 对所发送及接收的电子邮件实施加密或解密;实施与发送方或接收方的 密钥交换;把所述POP3的IP地址和端口号、所述SMTP的IP地址和 端口号、用户ID和口令、所述发送方或所述接收方的电子邮件地址、 通过所述密钥交换所形成的密钥保存在存储介质上;以及选择性地删除 所接收的电子邮件。此外,所述TCP2邮件系统应用的功能包括用于执 行以下操作的功能显示与发送自所述邮件系统核心的电子邮件有关的 密钥状态,和对所发送及接收的邮件进行列表显示以及明文显示由所述 现有的邮件收发器所接收到的加密邮件。本发明的邮件传送程序是 一 种 使得所述客户端设备计算机实现其对应的功能的程序。此外还包括记录 有所述邮件通信程序的记录介质以作为本发明的 一个实施例。
根据本发明的邮件系统,由于使用了 TCP2功能来加密/解密电子邮 件的标题、消息主体和附件,因此只有经过授权的人员才能在不为他人 所知的情况下找到所述电子邮件的内容。
此外,所述邮件发送和接收协议(SMTP、 POP2命令)以及所述邮
7件报头终结符、MIME标识符都保持明文,从而其效果是可以无需改变
,诏
附图简述


图1是示出了被用于本发明的邮件系统的TCP2的协议栈的图示。 图2是示出了被用于本发明的邮件系统的消息分组的结构的图示。 图3是本发明的客户端设备中的TCP2邮件系统的方框图。 图4是用于解释作为本发明的邮件系统的一个组件的TCP2核心的 概要的方框图。
图5是用于解释作为本发明的邮件系统的 一个组件的邮件系统核心 的概要的方框图。
图6是用于解释作为本发明的邮件系统的一个组件的TCP2邮件系 统应用单元的概要的方框图。
图7是示出了由TCP2邮件系统应用显示在输出设备上的所接收的 邮件列表的图示。
图8是示出了本发明的邮件系统中的用户登记流程的流程图的 一部分。
图9是示出了本发明的邮件系统中的用户登记流程的流程图的 一部分。
图0是示出了本发明的邮件系统中的用户登记流程的流程图的一 部分。
图11是示出了本发明的邮件系统中的密钥交换发送侧流程的流程 图的一部分。
图12是示出了本发明的邮件系统中的密钥交换发送侧流程的流程 图的一部分。
图13是示出了本发明的邮件系统中的密钥交换发送侧流程的流程 图的一部分。
图14是示出了本发明的邮件系统中的密钥交换接收侧流程的流程 图的一部分。
图15是示出了本发明的邮件系统中的密钥交换接收侧流程的流程 图的一部分。
图16是示出了本发明的邮件系统中的加密邮件发送侧流程的流程图的一部分。
图17是示出了本发明的邮件系统中的加密邮件发送侧流程的流程 图的一部分。
图18是示出了本发明的邮件系统中的加密邮件发送侧流程的流程 图的一部分。
图19是示出了本发明的邮件系统中的加密邮件接收侧流程的流程 图的一部分。
图20是示出了本发明的邮件系统中的加密邮件接收侧流程的流程 图的一部分。
图21是用于解释本发明的TCP2邮件系统的一个例子的概要的图示。
用于实施本发明的最佳模式
下面将参照附图描述本发明的实施例。
图1示出了用在本发明的加密通信系统中的TCP2协议栈。
〈TCP2协议栈的描述〉
该协议栈包括NIC (网络接口卡)驱动器11,其被设置成对应于 OSI七层当中的物理层(第一层)和数据链路层(第二层)的一层。所 述驱动器被提供来把诸如计算机之类的硬件连接到网络,并且其内容是 数据发送和接收控制软件。例如,用于连接到以太网的LAN板或LAN 卡与之对应。
被部分地扩展到传输层(第四层)的IP仿真器(仿真器)13是第 三层的网络层。传输功能未被安装在扩展到所述传输层的该部分上,并 且其仅仅为会话层(第五层)提供所述网络层的功能。所述IP仿真器 13 :陂配置成利用作为实施加密通信的协议的"CP上的IPsec" 13b或者 利用"CP上的IP" 13a来实施操作,这是通过取决于预定用途在二者之 间进行切换而实现的。在这里,"CP上" 一词表明由防破解器(CP) 观测对某一对象的"逼近"和"攻击"及其废弃、切断或通过限制,或 者可以通过所述防破解器的设置来实施这种) 见测。
此外,所述网络层设置有CP上的ARP (防破解器上的地址解析协 议)。所述CP上的ARP是一种被用于从包括防解密者的保护措施的IP 地址中找到MAC (介质访问控制)地址的协议,所述MAC地址是以太
9网的物理地址。MAC是利用在LAN等内的发送控制技术,其一皮称作介 质访问控制并且被用作 一种定义作为数据的发送及接收单位的帧的发 送及接收方法、帧格式、纠错等等的技术。
在这里,所述IP仿真器13是用于允许把根据本发明的各种安全性 功能与传统的IP外围协议栈相匹配的软件或固件。更具体来说,所述 IP仿真器13是用于允许把各种安全性功能与ICMP(互联网控制消息协 议)14a、 IGMP (互联网组管理协议)14b、 TCP 15和UDP 16相匹配 以及进一步匹配到套接字接口 17的软件、固件或硬件(电子电路、电 子组件)。所述IP仿真器13可以实施IPsec的加密和解密以及在所述 加密和解密之后的处理,比如添加必要的认证信息以及认证之类的处 理。应当注意到,所述ICMP是一种用于传送IP错误消息或者控制消息 的协议,所述IGMP是一种用于控制主机组的协议,所述主机组被配置 成高效地把相同的数据分发到多个主机或者接收所述数据分发。
TCP仿真器15和UDP仿真器16被设置在所迷传输层(第四层) 中,其是在所述IP仿真器13之上的一层。所述TCP仿真器15被配置 成利用作为实施加密通信的协议的"CP上的TCPsec" 15b或者利用作 为普通的通信协议的"CP上的TCP" 15a来实施操作,这是通过取决于 预定用途在二者之间进行切换而实现的。类似地,所述UDP仿真器16 被配置成利用作为实施加密通信的协议的"CP上的UDPsec" 16b或者 利用作为普通的通信协议的"CP上的UDP" 16a来实施操作,这是通过 取决于预定用途在二者之间进行切换而实现的。
此外,TCP2的最为特别的特征在于,TCPsec 15b和UDPsec 16b的 加密通信协议被安装在所述传输层(第四层)中。
实施与诸如TCP、 UDP等协议的数据交换的所述套接字接口 17被 提供在会话层(第五层)中,其是在所述传输层(第四层)之上的一层。 正如已经描述的那样,所谓的套接字是指通过把对应于网络中的计算机 的地址的IP地址与作为所述IP地址的子地址的端口号相组合而获得的 网络地址。在实践中,所述套接字接口 17配备有用于把一系列报头一 起添加或删除的单一软件程序模块(执行程序等等)或单一硬件模块(电 子电路、电子组件等等)。
所述TCP仿真器15在所述传输层中实施把分组分发到所述TCPsec 15b与普通协议TCP 15a的其中之一的操作,其中所述TCPsec 15b具有
10防止数据泄露和篡改的功能,即加密、完整性认证、认证等功能,而所
述TCP 15a则可能不具有这种加密、完整性认证、认证等功能。此外, 所述TCPsec 15b和TCP 15a都包括防破解器(CP ),从而在选择了任 一种所述协议的情况下都有可能实现防解密者的"逼近"和"攻击,,的 防护功能。所述TCP仿真器15还具有与位于上层中的套接字的接口的功能。
此外,如上所述,所述UDP可能不具有错误补偿功能,而所述TCP 则具有错误补偿功能,但是所述UDP相应地具有高传输速度的特征并 且还具有广播功能。所述UDP仿真器16与所述TCP仿真器15类似, 其实施把分组分发到所述UDPsec 16b与普通协议UDP 16a的其中之一 的操作,其中所述UDPsec 16b具有防止数据泄露和篡改的功能,即加 密、完整性认证、认证等功能,而普通协议UDP 16a则可能不具有这种 加密、完整性认证、认证等功能。
如图1中所示,根据本发明实施加密处理的协议栈包括所述套接字 17、 TCP仿真器15、 UDP仿真器16、 "CP上的TCPsec" 15b、 "CP 上的UDPsec" 16b、 "CP上的TCP" 15a、 "CP上的UDP" 16a、 "CP 上的ICMP" 14a、 "CP上的IGMP" 14b、 IP仿真器13、 "CP上的IP" 13a以及"CP上的ARP" 12,在下文中通常将把所述协议栈称作TCP2 (参见专利文献1 )。
在本发明的邮件系统内起到中心作用的所述TCP2中,按照标准协 议TCP、 UDP、 IP、 IPsec、 ICMP、 IGMP和ARP来实现CP (防破解), 并且可以防止针对对应的堆栈协议的基于通信的攻击以及基于应用程 序的攻击(特洛伊木马、篡改程序或者有资格的用户的未经授权的使 用)。此外,所述TCP仿真器15被实现在所迷TCP2中,并且所述TCP 仿真器15对于所述会话层中的套接字17以及所述网络层中的IP仿真器 13来说是兼容的,从而可以从外部把所述TCP仿真器15视为标准的 TCP。实际上,在TCP与TCPsec之间进行切换以便将其作为TCP2功 能来执行。TCPsec是所述传输层中的加密及认证功能。
此外,所述UDP仿真器16^皮类似地实现在TCP2中,并且所述UDP 仿真器16与对应于所述会话层中的套接字17以及所述网络层中的IP 仿真器13的标准UDP兼容,从而可以从外部把所述UDP仿真器16视 为标准的UDP。实际上,在UDP与UDPsec之间进行切换以便将其作为TCP2功能来执行。但是UDPsec是不被用在根据本发明的邮件系统 中的功能,因此在下文的描述中将不提及。
接下来将描述具有防止"数据泄露"的功能的所述TCPsec 15b,其 在TCP2中是特别重要的功能。 一种公知秘密密钥(公共密钥)加密算 法被用作用于所述TCPsec 15b的加密和解密方法(算法及逻辑(逻辑))。
此外,除了被用作本发明的邮件系统内的所述TCPsec 15b的密码系 统的例如所谓的FEAL (快速数据译码算法)、MISTY和AES (高级加 密标准)之类的密码系统之外,还有可能使用独立产生的秘密的加密和 解密算法。在这里,FEAL是由Nippon Telegraph and Telephone Corporation (当时的旧名)开发的密码系统,其是对于所述加密和解密 都使用相同的密钥的秘密-密钥密码系统。FEAL的优点在于,与DES (数据加密标准由IBM U.S.开发的公共密钥(秘密密钥)加密算法) 相比,加密和解密是在高速下实现的,
接下来,例如把MISTY用作对应于TCP2的密码系统,与IDEA类 似,MISTY通过将数据划分成多个64比特的块而对其进行加密。所述 密钥长度是128比特。在MISTY中对于加密和解密使用相同的程序, 这一点与DES等类似。
因此,可以采用多种已知的秘密密钥加密算法以作为根据本发明的 所述TCPsec 15b的密码系统,此外还有可能利用由用户独立开发的秘密 密钥(公共密钥)密码系统。
此外,比如MD5 (消息摘要5 ) 、 SHA1 (安全散列算法1 )之类的 利用公共密钥或预先共享的秘密的认证算法被用作一种"认证"和"完 整性认证"方法,以用于防止所谓的"冒充"和"数据篡改"等等。此 外还有可能采用 一种原始算法,其利用单向函数来替代上述公知的认证 算法。
MD5是一种被用于认证和数字签名的散列函数(单向汇总函数), 其中可以在通信的中途检测出原始文字是否被篡改,这是通过基于所述
散列值而实现的。所述散列值是一个诸如伪随机数的值,不可能利用该 值产生所述原始文字。此外,很难产生生成相同散列值的另一则消息。 SHA1也是一种被用于认证、数字签名等等的散列函数,其中可以 通过从具有2"或更少比特的最大长度的原始文字生成一个160比特散列值并且对所述通信路径两端的所述值进行比较而检测到在通信的中 途对原始文字的篡改。该认证算法也被采用在代表传统的互联网加密通
信的IPsec中。
.应当注意到,所述认证算法被设计成使得可以基于DH (Diffie-Hellman )公共密钥分发方法、类似于IPsec的IKE (因特网密钥 交换)协议(UDP的No. 500 )等等来实施安全的密钥交换,此外通过 协议驱动器程序(TCPsec 15b、 UDPsec 16b等等)确定一个调度表,从 而将周期性地变换加密/解密认证算法(逻辑)本身以及所述密钥集合/ 域。
<TCP2数据分组结构的描述>
接下来将基于图2描述使用在本发明的邮件系统中的数据分组结 构、其加密区域以及其应用了完整性认证的区域。
图2示出了 TCPsec/IPsec的分组结构、加密的区域以及应用了完整 性认证的区域。如图2中所示,所述分组结构包括IP报头21、 TCP报 头22以及紧跟在所述IP报头21之后的TCPsec附加信息23,其后还跟 着应用数据24。随后,把TCPsec附加报尾25和TCPsec附加认证数据 26设置在所述应用数据24之后。所述TCPsec附加报尾25是用于支持 出现在块密码中的数据空白上的密码数据、它的空白长度、接下来的报 头数目等等的信息。
取决于所采用的加密/认证算法,这种表示TCPsec的特征的信息可 被分散到TCPsec/IP的未被使用的报头字段部分等等之中,或者可通过 无法从单独的分组逆向计算或猜测的独立的先前设置(协商)而被省略。 此外,通过利用不会使用对应于高于所述IP层的一层的TCP和IP的协 议字^殳来构造如图2中所示的TCPsec/IP分组,与IPsec分组(其中仅4叉 集中于较低层IP)相比可以很容易减小分组尺寸。应当注意到,所述加 密的区域在这里包括如图中所示出的应用数据24和TCPsec附加报尾 25,并且所述认证区域包括所述加密的区域以及另外附加的TCPsec附 加信息26。
<对TCP2邮件系统的功能方框图的描述>
接下来将参照附图描述本发明的利用TCP2的邮件系统的第一实例。
图3是用在本发明的邮件系统中的客户端设备的一个例子的方框
13图。客户端设备A(或B)包括TCP2驱动器34、除了现有的邮件收发 器31之外的TCP2邮件系统应用单元35、输入设备32以及输出设备33 。 此外,所述客户端设备还包括用于保存所接收的邮件的存储介质39。
所述TCP2驱动器34包括在图4中描述的TCP2核心36、邮件系统 核心37以及在图5中描述的存储介质38。所述存储介质38是不同于所 述客户端设备A通常所具有的存储介质39的存储介质,并且是在由所 述邮件系统核心所具有的秘密密钥所加密的状态下存储后面描述的各 种信息的存储介质。
在这里,图中没有示出的邮件服务器和其他终端(例如客户端设备 B)连接到与所述客户端设备A相连的网络40,并且所述客户端设备A 和所述客户端设备B通过连接到所述网络40的邮件服务器(参见图4) 实施邮件交换。
接下来将简要描述图3中示出的客户端设备A的操作。在图4-6 中将进行详细描述。
首先,从所述邮件服务器通过所述网络40发送的加密的邮件数据 被发送到安装在所述客户端设备A中的TCP2驱动器34的TCP2核心 36。随后,在所述TCP2核心36中确认所述数据是P0P3分组之后,将 其发送到所述邮件系统核心37,并且在执行了预定处理之后发送到所述 现有的邮件收发器31。
此外,所述邮件系统核心37连接到所述TCP2邮件系统应用单元 35,并且通过所述TCP2邮件应用单元在所述输出设备33上显示所接收 到的邮件的列表(参见图7)。所述客户端设备A的用户查看所述显示 结果、确定是要接收还是丢弃邮件并且从所述输入设备32输入所述确 定结果。把所述输入设备32的输出通过所述TCP2邮件系统应用单元 35发送到所述邮件系统核心37,并且在该处删除不正当的邮件。
另一方面,在所述TCP2核心36中确认从所述客户端设备A的邮 件收发器31发送的电子邮件是具有SMTP分组的邮件,并且随后将其 发送到所述邮件系统核心37。随后,在所述邮件系统核心37中加密所 述邮件,并且通过所述TCP2核心36将其发送到与所述网络40相连的 所述邮件服务器41 (参见图4)。应当注意到,在图8到15中所描述 的用户登记或密钥交换的场合中,所述存储介质38在加密状态下存储 POP3 IP地址和端口号、SMTPIP地址和端口号、用户ID和口令、接收方和发送方的电子邮件地址以及密钥信息。此外,虽然取决于所述TCP2 安装模式,所述邮件消息也可被存储。
上面描述了本发明的邮件系统的 一 个例子的概略配置,下面将利用
图4到6的方框图以及图8到20的流程图给出其详细描述。
图4是用于详细解释作为所述TCP2驱动器34的一个组件的所述 TCP2核心36的功能方框图。其中为对应于图3中的部分给出相同的附 图标记。
如图4中所示,TCP2核心36包括指定端口搜索单元42和挂钩处 理单元43,所述指定端口搜索单元42接收来自所述邮件系统核心37的 端口搜索请求并且搜索指定的端口 ,所述挂钩处理单元43同样接收来 自所述邮件系统核心37的挂钩请求并且挂钩符合所述请求的分组。
所述TCP2核心36包括POP3命令消息分组确认单元44,其接收 来自所述客户端设备A的邮件收发器31的POP3命令消息分组并且确 认其是POP3命令消息分组;响应消息确认单元45,其确认所述消息是 来自与所述网络40相连的所述邮件服务器41; SMTP命令消息分组确 认单元46,其接收来自所述客户端A的邮件收发器31的SMTP命令消 息分组并且确认其是SMTP命令消息分组;以及响应消息确认单元47, 其确认所述消息是来自与所述网络40相连的所述邮件服务器41。此外, 所述TCP2核心36还包括分组拦截单元48,其连接POP3/SMTP消息确 认单元44到47和所述邮件系统核心37。
所述挂钩处理单元43是一个被配置成实施以下处理的单元捕获 由所述邮件系统核心37为之发出挂钩请求(即针对在接收到预定分组 时捕获该分组的请求)的分组。更具体来说,所述挂钩处理单元43与 所述POP3命令消息分组确认单元44和所述SMTP命令消息确认单元 46协作,并且在确认了包括事先为之发出挂钩请求的IP地址和端口号 的分组时捕获该分组,并且将其发送到所述邮件系统核心37。此外,如 果在所述POP3命令消息分组确认单元44和所述SMTP命令消息确认单 元46中确认了由所述邮件系统核心37事先为之发出挂钩请求的接收方 声明数据、密钥交换固定形式数据等等的情况下,则由所述挂钩处理单 元43捕获这些数据并且将其发送到所述邮件系统核心37。当所述POP3 响应消息分组确认单元45和所述SMTP响应消息分组确认单元47类似 地确认了每一个消息分组时,所述挂钩处理单元43捕获所述消息分组
15并且将其结果经由所述分组拦截单元48发送到所述邮件系统核心37。 因此描述了所述TCP2核心36的配置和操作。
接下来将基于图5描述所迷邮件系统核心37的配置和操作。对于 与图3和图4中相同的配置给出相同的附图标记,并且将省略对其的描述。
所述邮件系统核心37包括认证/分析单元50,其对^l包括在发送 自所述TCP2核心36的各种命令消息分组中的用户ID和口令实施认证 并且对各种命令消息进行分析;加密单元51,其加密被包括在由所述认 证/分析单元50所分析的命令消息分组中的所述POP3 IP地址和端口号、 SMTP IP地址和端口号、用户ID和口令、接收方和发送方的电子邮件 地址、密钥信息等等、以及明文邮件的标题、消息主体和附件;密钥交 换单元53,其实施在各客户端设备之间的密钥交换;以及存储介质38, 其如上所述地在加密状态下存储所述POP3 IP地址和端口号、SMTP IP 地址和端口号、用户ID和口令、接收方和发送方的电子邮件地址、密 钥信息等等。此外,所述邮件系统核心37还包括接口单元55,其把 所述邮件系统核心37连接到所述TCP2邮件系统应用单元35;邮件/附 件删除单元54,其基于所显示的接收邮件列表删除所述邮件和附件(见 图7);以及解密单元52,其对在加密状态下被存储在所述存储介质38 中的所述信息进行解密。
如上所述,所述TCP2核心36基于来自所述邮件系统核心37的所 述挂钩请求捕获来自所述终端的邮件收发器31以及来自所述邮件服务 器41的命令消息分组。由所述TCP2核心36所捕获的命令消息分组被 发送到所述邮件系统核心37的认证/分析单元50。
所述邮件系统核心37的加密单元51对来自由所述认证/分析单元 50所分析的所述命令消息分组的邮件的标题、消息主体和附件进行加 密,并且通过所述TCP2核心36将其发送到所述邮件服务器41。应当 注意到,在不由所述加密单元51对其进行加密的情况下通过所述TCP2 核心36把除了所述邮件的标题、消息主体和附件之外的命令消息分组 发送到所述邮件服务器41。
所述解密单元52是用于解密各种信息(其中包括被存储在所述存 储介质38中的邮件信息)并且在必要时通过所述TCP2核心36将它们 发送到所述邮件收发器31的装置。此外,所述密钥交换单元53是用于在连接到所述网络40的所述终端(客户端设备A)与另一个终端(客
户端设备B)之间实施密钥交换的装置。在所述加密单元51和所述解密 单元52中,对所述邮件的标题、消息主体或附件进行加密或解密。
此外,所述邮件系统核心37包括邮件/附件等的删除单元54,其允 许删除不正当的邮件。所述邮件/附件删除单元54通过接口 55连接到所 述TCP2邮件应用单元(参见图3、图6)。所述客户端设备A的操作 员确认被显示在所述输出设备(显示设备)33上的图7中所示的显示数 据,并且确定接收邮件及删除邮件。通过点击删除按钮把删除邮件(或 附件)发送到图5中的邮件系统核心37的文件-附件删除单元54,并
设备A的邮件收发器、1:''、一'、 、、'、 、、
接下来将基于图6描述所述TCP2邮件系统应用单元35的配置和操 作。所述TCP2邮件系统应用单元35是连接所述邮件系统核心37与所 述输入设备33和输出设备32的软件,其被配置成具有接口 61、用户登 记单元62、邮件发送方/接收方信息管理单元63、邮件显示单元64以及 输入和输出控制单元65。随后从所述输入和输出控制单元65通过所述 接口 61在所述邮件系统核心37中实施用户登记,并且在所述用户登记 完成时从所述邮件系统核心37通过所述接口 61向所述用户登记单元62 发送用户登记完成通知。随后在所述输出设备33上显示所述用户登记 已完成这一事实。
此外,如上所述,在所述输出设备33上显示如图7中所示的接收 邮件列表屏幕。也就是说,当把邮件数据从所述POP3服务器发送到所 述邮件系统核心37时,由所迷邮件系统核心37暂緩对所述加密邮件、 具有附件的邮件以及HTML邮件的接收。
随后把所接收的邮件作为列表显示在所述输出设备33上,并且所 述TCP2邮件应用单元3选一奪"接收"或"丟弃"所述邮件。更具体来 说,在加密邮件的情况下,在按下"接收,,按钮并且认证了所述人员之 后,可以由所述现有的邮件收发器31接收所述加密邮件。
此外,在具有附件的邮件或者HTML邮件的情况下,在向发送方确 认了所迷发送方是否故意发送了所述邮件之后,所迷"接收"按钮将被 按下,并且将有可能由所述现有的邮件收发器31接收该邮件。在与所 述发送方进行确认的过程中并且在所述发送方可能根本无法调回所述发送的情况下,所述"丢弃"按钮将被按下,并且有可能丟弃所述邮件。
此外,在所述TCP2邮件应用单元35中,所述邮件显示单元64允
邮件是明文(plaintext)的并且将其显示在所述输出设备33上。 <用户登记的流程描述>
接下来将基于图8到图10的流程图详细描述用户登记的流程。 在本发明中,在邮件发送过程中必须使用"SMTP之前POP"系统。 所述"SMTP之前POP,,系统意味着其中必须在利用SMTP之前执
行POP的邮件发送系统。
被用在邮件发送中的SMTP协议(在标准冲莫式下)没有用于用户认
证的机制,因此任何用户都有可能发送邮件。
出于该原因,例如可能会发送垃圾邮件和诸如病毒之类的邮件。所
述"SMTP之前POP"。
在用于接收邮件的所述POP协议中,在其连接的第一步中实施用户
认证Q
因此,如果使得根据POP的用户认证必须在所述SMTP协议的发送 之前被接收,则有可能对使用所述SMTP服务器的用户进行限制,从而 有可能防止不正当的邮件发送。
利用了具有上述机制的所述SMTP服务器的系统被称作"SMTP之 前POP"。
典型地,在实施了所述POP操作之后,将仅仅在大约几分钟到几十 分钟的间隔内允许从相同的IP地址访问所述SMTP服务器,因此用户 需要在该时间段中发送邮件。
在所述SMTP服务器采用"SMTP之前POP"系统的情况下,所述 用户必须在发送邮件之前实施一次接收操作,但是取决于所述邮件-软 件,该操作被自动实施。
此外,当所述邮件-软件可能不支持时,可以在手动实施所述接收 操作一次之后实施所述发送。
在这里,用户根据该方法实施发送,而不管所述SMTP服务器是否 采用了所述"SMTP之前POP"系统。
首先,当在所述TCP2邮件系统中登记用户时,所述用户登记从
18TCP2邮件系统应用单元开始(步骤SI )。更具体来说,所述TCP2邮 件系统应用单元35请求所述TCP2驱动器34中的邮件系统核心37登记 用户。接收所述用户登记请求的所述邮件系统核心37发送邮件搜索请 求到所述TCP2驱动器中的TCP2核心36。在接收到来自所述邮件系统核心37的所述邮件搜索请求时,所述 TCP2核心36搜索指定通信端口 (步骤S2)。在所述操作之后,从所述现有的邮件收发器31向所述用户发送用 于所述用户登记的固定形式邮件(步骤S3)。在这里,如上所述,在请 求来自SMTP的邮件发送之前实施到P0P3的连接。在该步骤中,通过 所述TCP2核心在所述现有的邮件收发器31与连接到所述网络40的所 述邮件服务器41 (参见图4)之间建立TCP通信。随后,所述TCP2核心36接收来自所述网络40的POP3连接消息, 并且在识别出其是POP3端口之后,向所述邮件系统核心37通知所搜索 到的端口 (步骤S4)。例如,如果所述指定通信端口是一个SMTP (例 如25端口 )或POP3 (例如110端口 )分组,则向所述邮件系统核心37 通知所搜索到的端口。与此同时,所述TCP2核心36还向所述现有的邮 件收发器31传送一则POP3连接消息。所述邮件系统核心37接收来自所述TCP2核心36的搜索结果,并 且请求所述TCP2核心36接收(拦截)所述分组(步骤S5 )。在接收 到来自所述邮件系统核心37的拦截请求之后,所述TCP2核心36开始 拦截所述分组(步骤S6)。随后,把用户ID从所述现有的邮件收发器31发送到所述TCP2核 心36,并且所述TCP2核心36确认所述用户ID分组(步骤S7),并且 来自所述邮件收发器的"USER (用户)"消息被发送到所述邮件系统 核心37。 "USER"是在把客户端连接到服务器时所发出的POP3的基 本命令。所述邮件系统核心37分析来自所述TCP2核心36的"USER"消息、 把POP3 IP地址和端口号存储在所述存储介质38中(参见图3、图5) 并且把所述用户ID暂时保存在其中(步骤S8)。在这里,所述用户ID 被暂时保存,这是因为在该步骤中尚未通过口令确认等方式获得认证。 随后,所述用户ID被发送到与所述网络40相连的所述邮件服务器41 (参见图4)。把针对所述用户ID的响应从所述邮件服务器41返回到所述TCP2 核心36,所述TCP2核心36确:〖人所述用户ID响应消息的分组,并且向 所述邮件系统核心37发送作为其结果的"+0K"消息(步骤S9 )。 "+OK" 消息是告知在所述邮件服务器41中"已识别出用户,发送口令"的消 息。所述邮件系统核心37分析所述"+OK"消息,并且把来自所述邮 件服务器41的用户ID响应传送到所述邮件收发器31 (步骤SIO)。接下来将描述其中所述邮件收发器31向所述邮件服务器41发送口 令消息的这样的情况。首先,在所述TCP2核心36中确认发送自所述邮 件收发器31的所述口令消息,并且把所确认的口令消息的分组发送到 所述邮件系统核心37 (步骤Sll )。所述邮件系统核心37接收来自所 述TCP2核心36的"PASS"消息并且对其进行分析。作为所述分析的 结果,所述口令被暂时保存在所述存储介质38中(暂时保存),并且 把所述口令发送到与所述网络40相连的所述邮件服务器41(步骤S12 )。接下来,当把口令响应消息从所述邮件服务器41返回到所述客户 端设备A时,由所述TCP2核心36确认所述口令响应消息的分组,并 且把所述口令响应消息的所述分组发送到所述邮件系统核心37 (步骤 S13)。所述邮件系统核心37接收所述口令响应消息的所述分组并且分 析该消息。更具体来说,对表明所述口令被确认的"+OK"消息进行分 析,并且把暂时保存在所述存储介质38中的所述用户ID和口令正式存 储在所述存储介质38内。从而终止所述用户认证。随后,在终止对所 述用户ID和口令的存储之后,把来自所述邮件服务器41的所述口令响 应发送到所述邮件收发器31。在接收到所述口令响应之后,所述邮件收发器31向所述TCP2核心 36发送报告所述连接被释放的终止声明(QUIT(放弃)),所述TCP2 核心36向所述邮件系统核心37报告所述终止声明已被确认(步骤S15 )。 所述邮件系统核心37分析所述"QUIT"消息,并且把所述终止声明 "QUIT"发送到与所述网络40相连的所述邮件服务器41 (步骤S16)。此后^巴终止声明响应从所述邮件服务器41返回到所述TCP2核心 36,从而所述TCP2核心36确认所述终止声明响应的分组(步骤S17), 并且把结果发送到所述邮件系统核心37。所述邮件系统核心37分析来 自所述TCP2核心36的"+OK"消息,并且把终止声明响应传送到所述 邮件收发器31 (步骤S18)。相应地完成切断所述TCP2核心36与所述20邮件收发器31之间的以及所述TCP2核心36与连接到所迷网络40的所述邮件服务器41之间的TCP通信。接下来将基于图9描述所述用户登记流程的第二步。 所述第二步开始于从所述邮件收发器31的SMTP到与所述网络40相连的所述邮件服务器41的邮件发送请求(步骤S19)。相应地,通过所述TCP2核心36在所述邮件收发器31与所述邮件服务器41之间建立TCP通信。在建立了所述TCP通信之后,从所述邮件服务器41向所述TCP2 核心36发送一则SMTP连接消息,所述TCP2核心36接收SMTP响应 代码"220"、识别出其是SMTP端口并且向所述邮件系统核心37通知 搜索结果(步骤S20) 。 SMTP响应代码"220"是关于在所述邮件服务 器与所述客户端设备之间的连接准备已经完成的通知。随后,所述邮件系统核心37请求所述TCP2核心36接收(拦截) 分组(步骤S21 ),接收到所述请求的所述TCP2核心36开始所述分组 接收(步骤S22 )。接下来从所述客户端设备的邮件收发器31发出利用开始声明。所 述利用开始声明是从所述客户端设备向所述服务器告知"从现在开始发 送邮件"的消息。所述TCP2核心36确认所述利用开始声明消息的分组 (步骤S23),并且将其作为"HELO" 、 "EHLO"消息发送到所述邮 件系统核心37。所述邮件系统核心37分析所述"HELO" 、 "EHLO"消息,并且 把所述SMTP IP地址和端口号保存在所述存储介质38内(步骤S24 )。 随后,把所述利用开始声明发送到与所述网络40相连的所述邮件服务 器41。从所述邮件服务器41中发出针对所述利用开始声明的利用开始 声明响应,并且在所述TCP2核心36中对其进行确认(步骤S25)。所 述利用开始声明的响应代码由编号"250"表示。所述响应代码"250" 指代"所请求的邮件动作许可,已完成"。所述邮件系统核心37分析所述"250"消息,并且把发送自所述邮 件服务器41的所述利用开始声明响应发送到所述邮件收发器31 (步骤 S26)。随后,从所述邮件收发器31发送一则发送方声明。所述TCP2核心 36确认所述发送方声明的分组,并且将其发送到所述邮件系统核心37(步骤S27)。所述发送方声明消息是指代"邮件来自<"的消息,并且 是通知所述发送方的消息。所述邮件系统核心37分析该消息、把所述 发送方的电子邮件地址存储在所述存储介质38中(步骤S28)并且把所 述发送方声明发送到所述邮件服务器41。所述邮件服务器41接收所述发送方声明,并且发出发送方声明响 应。所述TCP2核心36确认该发送方声明响应的分组,并且把该响应代 码"250"发送到所述邮件系统核心37 (步骤S29)。所述邮件系统核 心37分析该"250"响应代码,并且随后把所接收到的发送方声明响应 发送到所述客户端设备的邮件收发器31 (步骤S30)。随后,所述邮件收发器31发送接收方声明消息。所述接收方声明 消息是用来向所述邮件服务器41报告"请发送电子邮件到以下电子邮 件地址。"的消息并且被表示为一个参考数字,所述参考数字指代"RCPT TO:<"的。所述TCP2核心36确认该接收方声明消息(步骤S31 ),并 且将其发送到所述邮件系统核心37。所述邮件系统核心37分析所述 "RCPTTO:<"消息,并且将其发送到所述邮件服务器41 (步骤S32 )。在接收到所述接收方声明之后,所述邮件服务器41把接收方声明 响应返回到所述TCP2核心36,所述TCP2核心36确认该接收方声明响 应,并且将其作为响应代码"250"发送到所述邮件系统核心37 (步骤 S33)。所述邮件系统核心37分析所述接收方声明响应,并且将其传送 到所述客户端终端的邮件收发器31 (步骤S34)。随后将描述图10中示出的所述用户登记流程的第三步。更具体来 说,所述客户端设备的邮件收发器31接收到所述接收方声明响应,并 且发送消息主体开始声明。所述TCP2核心36确认所述消息主体开始声 明的分组,并且将其作为"DATA(数据)"消息提供到所述邮件系统 核心37(步骤S35)。在这里,"DATA"是一条SMTP命令,其意味 着所述消息主体的发送。所述邮件系统核心37分析所述"DATA"消息, 并且把该消息主体开始声明发送到所述邮件服务器41 (步骤S36)。在接收到所述消息主体开始声明之后,所迷邮件服务器41向所述 客户端设备发送消息主体开始声明响应。随后,所述客户端设备的TCP2 核心36确认所述消息主体开始声明响应的分组,并且将其作为一则 "354"消息发送到所述邮件系统核心37 (步骤S37)。在这里,所述响 应代码"354"是表明邮件输入开始的SMTP响应代码。22所述邮件系统核心37分析所述"354"消息,并且把发送自所述邮 件服务器41的所述消息主体开始声明响应发送到所述终端的邮件收发 器31 (步骤S38)。在接收到该响应之后,所述邮件收发器31向所述邮件服务器41发 送一则用户登记固定形式邮件消息。此时,所述TCP2核心36确认所述 用户登记固定形式邮件消息的分组,并且将其发送到所述邮件系统核心 37 (步骤S39 )。所述邮件系统核心37接收所述用户登记固定形式邮件消息的分组, 并且实施对所述用户登记固定形式邮件消息的分析(步骤S40)。随后, 所述用户登记固定形式邮件消息被发送到所述邮件服务器41 。接下来,从所述邮件服务器41向所述客户端设备发送一则发送数 据响应消息。所述TCP2核心36确认所述发送数据响应消息的分组,并 且将该发送数据响应消息的分组发送到所述邮件系统核心37 (步骤 S4)。所述邮件系统核心37接收所述发送数据响应消息的分组,并且 分析该消息。更具体来说,分析所述SMTP响应代码"250 OK"消息, 向所述TCP2邮件系统应用单元35通知所述用户登记完成,并且把所述 发送数据响应发送到所述终端的邮件收发器31 (步骤S42)。在接收到 来自所迷邮件系统核心37的所述通知之后,所述TCP2邮件系统应用单 元35在所述输出设备33的显示屏上显示所述用户登记已完成这一事实 (步骤S43 )。接收到来自所述邮件服务器41的所述发送数据响应的所述邮件收 发器31向所述邮件服务器41发送一则终止声明消息"QUIT"。接收到 所述终止声明消息的所述TCP2核心36确认该分组(步骤S44),并且 将其作为一则"QUIT"消息发送到所述邮件系统核心37。所述邮件系 统核心37分析该"QUIT"消息,并且向所述邮件服务器41发送所述终 止声明(步骤S45)。所述邮件服务器41发出关于所述终止声明的终止 声明响应,并且将其发送到所述客户端设备。随后,所述客户端设备的 TCP2核心36确认所接收到的终止声明响应的分组,并且将其作为 SMTP响应代码"221"消息发送到所述邮件系统核心37 (步骤S46)。 所述"221"消息是告知所述连接被关闭的SMTP响应代码。所述邮件 系统核心37分析所述"221"消息,并且将其终止声明响应发送到所述 终端的邮件收发器31。相应地,所述用户登记流程全部完成,并且切断所述客户端设备中的邮件收发器31与所述邮件服务器41的TCP通信。<密钥交换发送侧的流程的描述>接下来将基于图11到图13的流程图描述所述密钥交换发送侧的流程。首先,在没有中断的情况下从所述TCP2邮件系统的TCP2驱动器 34的邮件系统核心37到所述TCP2核心发出针对捕获具有所有已登记 用户的邮件服务器的P0P3和SMTP IP地址和端口号的分组的挂钩请求 (步骤S50)。所述挂钩请求是针对捕获分组的请求,其中包括具有对于 所有已登记用户所登记的邮件服务器的POP3和SMTP IP地址和端口号 的那些分组。在接收到所述挂钩请求之后,所述TCP2核心36捕获(挂 钩)所述分组,其中包括具有已登记的所有用户的POP3和SMTP服务 器的IP地址和端口号的那些分组。在这里,在通过所述TCP2邮件系统实施对加密邮件的发送和接收 时,必须首先在发送及接收所述加密邮件的用户之间实施所述密钥交换 固定形式邮件的发送和接收。为此,首先把所述密钥交换固定形式邮件输入到所述终端(新发送 侧终端"客户端设备A")的邮件收发器31,并且把所输入的密钥交 换固定形式邮件发送到与所述网络40相连的所述邮件服务器(步骤 S52)。所述邮件服务器41把所述密钥交换固定形式邮件传送到所述密 钥交换接收侧终端(新接收侧终端"客户端设备B")的邮件服务器, 并且所述接收侧终端(客户端设备B)可以通过对所述邮件服务器进行 寻址来接收所述密钥交换固定形式邮件。在从SMTP发出邮件发送请求之前,首先把POP3连接在所述客户 端设备A与所述邮件服务器41之间。在该步骤中,通过所述TCP2核 心在所述现有的邮件收发器31与连接到所述网络40的所述邮件服务器 41 (参见图4)之间建立TCP通信。.随后,从连接到所述网络40的邮件服务器41发送POP3连接消息, 所述TCP2核心36接收所述POP3连接消息,并且在识别出其是POP3 分组之后向所述邮件系统核心37通知挂钩结果(步骤S53)。在接收到来自所述TCP2核心36的所述挂钩结果之后,所述邮件系 统核心37请求所述TCP2核心36接收(拦截)所述分组(步骤S54 )。 在接收到来自所述邮件系统核心37的所述拦截请求之后,所述TCP224核心36开始拦截所述分组(步骤S55 )。随后,从所述现有的邮件收发器31向所述TCP2核心36发送一个 用户ID,所述TCP2核心36确认该用户ID的分组(步骤S56),并且 从所述邮件收发器向所述邮件系统核心37发送一则"USER (用户)" 消息。如在所述用户登记(参见图8)中所描述的那样,所述"USER" 消息是在把客户端连接到服务器的情况下所发出的POP3基本命令。所述邮件系统核心37分析来自所述TCP2核心36的所述"USER" 消息,并且把所述用户ID暂时保存在所述存储介质38 (参见图3和图 5)中(步骤S57)。在这里,所述暂时保存表示还没有通过所述口令确 认等获得认证的一个步骤,即在认证之后的正式存储之前的先前保存步 骤。随后把所述用户ID发送到与所述网络40相连的所述邮件服务器41。从所述邮件力l务器41向所述TCP2核心36返回针对所述用户ID的 响应,所述TCP2核心36确i/v所述用户ID响应消息的分组,并且才巴作 为所述确认的结果的一则"+OK"消息发送到所述邮件系统核心37 (步 骤S58)。所述"+OK"消息是一则告知在所述邮件服务器41中"已识 别出用户,发送口令"的消息。所述邮件系统核心37分析所述"+OK" 消息,并且所述用户ID响应被从所述邮件服务器41传送到所述邮件收 发器31 (步骤S59)。接下来,所述口令消息被从所述客户端设备A的现有的邮件收发器 31发送到与所述网络40相连的所述邮件服务器41。在所述TCP2核心 36中确认发送自所述邮件收发器31的所述口令消息,并且把经过确认 的口令消息的分组发送到所述邮件系统核心37 (步骤S60)。所述邮件 系统核心37接收来自所述TCP2核心36的"PASS"消息,并且分析所 述消息。作为所述分析的结果,所述邮件系统核心把所述口令暂时保存 在所述存储介质38中,并且把所述口令发送到与所述网络40相连的所 述邮件服务器41 (步骤S61 )。接下来,当所述口令响应消息从所述邮件服务器41返回到所述客 户端设备A时,所述TCP2核心36确认所述口令响应消息的分组,并 且把所述口令响应消息的分组发送到所述邮件系统核心37(步骤S62)。 所述邮件系统核心37接收所述口令响应消息的分组,并且分析该消息。 更具体来说,所述邮件系统核心37分析表明口令已被确认的所述"+OK" 消息,通过把暂时存储在所述存储介质38中的所述用户ID和口令与寄存在所述存储介质38中的用户ID和口令进行核对来实施认证,并获取密钥信息(步骤S63)。随后,在获取所述密钥信息之后,所述邮件系 统核心37向所述邮件收发器31发送口令响应。在接收到所述口令响应之后,所述邮件收发器31向所述TCP2核心 36发送报告所述连接被释放的终止声明(QUIT),所述TCP2核心36 向所述邮件系统核心37才艮告所述终止声明已^t确认(步骤S64)。所述 邮件系统核心37分析所述"QUIT"消息,并且把所述终止声明(QUIT) 发送到与所述网络40相连的所述邮件服务器41 (步骤S65)。随后把终止声明响应从所述邮件服务器41返回到所述TCP2核心 36,所述TCP2核心36确认所述终止声明响应的分组(步骤S66),并 且^f巴结果发送到所述邮件系统核心37。所述邮件系统核心37分析来自 所述TCP2核心36的"+0K"消息,并且把所述终止声明响应传送到所 述邮件收发器31 (步骤S67)。从而完成切断所述客户端设备A与连接 到所述网络40的所述邮件服务器41 (客户端设备B )之间的TCP通信。接下来将基于图12描述所述密钥交换发送侧的第二步。与所述用户登记的情况(参见图9)类似,所述第二步开始于从所 述邮件收发器31的SMTP到与所述网络40相连的所述邮件服务器41 的邮件发送请求(步骤S68)。利用该请求,通过所述TCP2核心在所 述邮件收发器31与所述邮件服务器41之间建立TCP通信。在建立了所述TCP通信之后,从所述邮件服务器41向所述TCP2 核心36发送一则SMTP连接消息,在接收到所述SMTP响应代码"220" 之后,所述TCP2核心36识别出其是SMTP端口 ,并且向所述邮件系统 核心37通知搜索结果(步骤S69)。随后,所述邮件系统核心37请求所述TCP2核心36接收(拦截) 所述分组(步骤S70 ),接收到所述请求的所述TCP2核心36开始接收 所述分组(步骤S71 )。接下来,所述客户端设备的邮件收发器31发出利用开始声明。所 述利用开始声明是从所述客户端设备向所述服务器告知"从现在开始发 送邮件"的消息。所述TCP2核心36确认所述利用开始声明消息的分组 (步骤S72),并且将其作为所述"HELO" 、 "EHLO"消息发送到所 述邮件系统核心37。所述邮件系统核心37分析所述"HELO" 、"EHLO"消息,并且把所述SMTP IP地址和端口号保存在所述存储介质38内(步骤S73 )。 随后,所述邮件系统核心37把所述利用开始声明发送到与所述网络40 相连的所述邮件服务器41。从所述邮件服务器41中发出针对所述利用 开始声明的利用开始声明响应,并且其在所述TCP2核心36中被确认(步 骤S74 )。所述邮件系统核心37分析所述"250"消息,并且把发送自所述邮 件服务器41的所述利用开始声明响应发送到所述邮件收发器31 (步骤 S75)。随后从所述邮件收发器31发送一则发送方声明。所述TCP2核心 36确认所述发送方声明的分组,并且将其发送到所述邮件系统核心37 (步骤S76)。该发送方声明消息是指代"邮件来自<"的消息,并且是 通知所述发送方的消息。所述邮件系统核心37分析该消息、把所述发 送方的邮件地址存储在所述存储介质38中(步骤S77)并且把发送方声 明发送到所述邮件服务器41。在接收到所述发送方声明之后,所述邮件服务器41发出一则发送 方声明响应。所述TCP2核心36确认发送方声明响应的分组,并且才巴响 应代码"250"发送到邮件系统核心37 (步骤S78)。邮件系统核心37 分析"250"响应代码,并且随后把接收到的发送方声明响应发送到所 述客户端设备的邮件收发器31 (步骤S79)。随后,邮件收发器31发送接收方声明消息。所述接收方声明消息 是用来向邮件服务器41报告"请发送邮件到以下电子邮件地址"的消 息并且被表示为"RCPTTO:<"的符号。TCP2核心36确认所述接收方 声明消息(步骤S80),并且将其发送到邮件系统核心37。邮件系统核 心37分析所述"RCPTTO:<"消息、把所述接收方邮件地址保存在存储 介质38中并且将所述接收方声明发送到邮件服务器41 (步骤S81)。在接收到所述接收方声明之后,邮件服务器41把一则接收方声明 响应返回到TCP2核心36,所述TCP2核心36确认该接收方声明响应, 并且将其作为响应代码"250"发送到邮件系统核心37 (步骤S82)。 所述邮件系统核心37分析所述接收方声明响应,并且将其传送到所述 客户端终端的邮件收发器31 (步骤S83)。随后将基于图13描述密钥交换发送侧的流程的第三步。更具体来 说,客户端设备A的邮件收发器31接收到所述接收方声明响应,并且27发送消息主体开始声明。所述TCP2核心36确认所述消息主体开始声明 的分组,并且将其作为"DATA"消息提供到所述邮件系统核心37 (步 骤S84)。在这里,"DATA"是一条SMTP命令,其意味着所述消息 主体的发送。所述邮件系统核心37分析所述"DATA"消息,并且把所 述消息主体开始声明发送到所述邮件服务器41 (步骤S85)。在接收到所述消息主体开始声明之后,所述邮件服务器41向所述 客户端设备A发送消息主体开始声明响应。随后,所述客户端设备A 的TCP2核心36确认所述消息主体开始声明响应的分组,并且将其作为 一则"354"消息发送到所述邮件系统核心37 (步骤S86)。在这里, 所述响应代码"354"是表明邮件输入开始的SMTP响应代码。所述邮件系统核心37分析所述"354"消息,并且把发送自所述邮 件服务器41的消息主体开始声明响应发送到所述终端的邮件收发器31 (步骤S87 )。在接收到该响应之后,邮件收发器31向邮件服务器41发送一则密 钥交换固定形式邮件消息。此时,TCP2核心36确认所述密钥交换固定 形式邮件消息的分组,并且将其发送到邮件系统核心37 (步骤S88)。在接收到所述密钥交换固定形式邮件消息的所述分组之后,在这里 邮件系统核心37首先确定密钥交换是否将去向发送侧(步骤S89)。更 具体来说,关于密钥交换,发送及接收加密邮件的每一个终端(客户端 设备A和B )必须互相发送密钥交换固定形式邮件到另 一个设备。例如, 如果是在客户端设备A与客户端设备B之间发送及接收加密邮件,那么 首先把密钥交换固定形式邮件消息从发送侧客户端设备A发送到接收 侧客户端设备B,并且随后把密钥交换固定形式邮件消息从接收侧客户 端设备B发送到发送侧客户端设备A。确定步骤S89是用于确定密钥交 换是去向发送侧还是去向接收侧的步骤。不言自明的是,邮件服务器41 (参见图4)介于密钥交换固定形式邮件消息的发送与接收之间。如果在确定步骤S 8 9中确定密钥交换固定形式邮件消息是来自发送 侧(客户端设备A)的情况下,则邮件系统核心37分析"邮件消息", 并且把其中附加了密钥原始值的邮件发送到与网络40相连的邮件服务 器41 (步骤S90)。此时,所述密钥原始值被存储在存储介质38中, 并且^L发送到所述TCP2邮件系统应用单元35,并且在输出设备33上 显示当前的密钥状态(步骤S91)。此外,如果在确定步骤S89中确定所述密钥交换不是去向发送侧(客户端设备A)的情况下,也就是说如果确定所述密钥交换是去向接收侧 (客户端设备B)的情况下,则邮件系统核心37分析"邮件消息"、把 其中附加了所述密钥原始值的邮件发送到与网络40相连的邮件服务器 41并且把所述密钥原始值保存在存储介质38中(步骤S92)。随后, 从所述附加的密钥原始值和已经保存在所述存储介质38中的密钥原始 值产生一个新密钥,并且将其保存在所述存储介质38中。随后,把所 述新产生的密钥发送到所述TCP2邮件系统应用单元35,并且在所述输 出设备33上显示当前的密钥状态(步骤S93)。通过上面描述的处理, 所述密钥交换固定形式邮件消息被发送到所述邮件服务器41 (客户端设 备B)。接下来,从所述邮件服务器41向所述客户端设备A发送一则发送 数据响应消息。所述TCP2核心36确认所述发送数据响应消息的分组, 并且将该发送数据响应消息的分组发送到所述邮件系统核心37 (步骤 S94)。在接收到所述发送数据响应消息的所述分组之后,所述邮件系 统核心37分析该消息。更具体来说,所述邮件系统核心37分析所述 SMTP响应代码的"250 OK"消息,并且把所述发送数据响应发送到所 述终端(客户端设备A)的邮件收发器31 (步骤S95)。因此接收来自邮件服务器41的发送数据响应的邮件收发器向邮件 服务器41发送一则终止声明消息"QUIT"。接收到所述终止声明消息 的TCP2核心36确认其分组(步骤S96 ),并且将其作为一则"QUIT" 消息发送到邮件系统核心37。所述邮件系统核心37分析该"QUIT"消 息,并且向邮件服务器41发送一则终止声明(步骤S97)。所述邮件服 务器41发出针对所述终止声明的终止声明响应,并且将其发送到所述 客户端设备A。随后,所述客户端设备A的TCP2核心36确认所接收 到的终止声明响应的分组,并且将其作为一则SMTP响应代码"221" 消息发送到所述邮件系统核心37 (步骤S98)。所述"221"消息是告 知所述连接将被关闭的SMTP响应代码。所述邮件系统核心37分析所 述"221"消息,并且将其终止声明响应发送到所述终端的邮件收发器 3](步骤S99)。相应地,所述密钥交换发送侧的流程全部完成,并且 切断所述客户端设备A的邮件收发器31与所述邮件服务器41之间的 TCP通信。<密钥交换接收侧的流程的描述〉接下来将基于图M到图15的流程图描述所述密钥交换接收侧的流程。如图14中所示,首先在没有中断的情况下从所述TCP2驱动器34 的邮件系统核心37到所述TCP2核心发出针对捕获分组的挂钩请求,其 中包括具有所有已登记用户的P0P3和SMTP服务器的IP地址和端口号 的那些分组(步骤S101 )。在接收到所述挂钩请求之后,所述TCP2核 心36捕获(挂钩)所述分组,其中包括具有已登记的所有用户的POP3 和SMTP服务器的IP地址和端口号的那些分组(步骤S102)。在由所述密钥交换接收侧的现有的邮件收发器31执行邮件接收时, 在所述现有的邮件收发器31与连接到所述网络40的所述邮件服务器41 (参见图4)之间建立TCP通信。换句话说,在具有所述现有的邮件收 发器31的客户端设备A与连接到所述网络40的所述邮件服务器41(或 客户端设备B)之间建立TCP通信。从连接到所述网络40的所述邮件服务器41发送一则POP3连接消 息,所述TCP2核心36接收所述POP3连接消息,并且在识别出其是来 自所述POP3端口的连接消息之后向所述邮件系统核心37通知挂钩结果 (步骤S103)。在接收到来自所述TCP2核心36的所述挂钩结果之后,所述邮件系 统核心37请求所述TCP2核心36接收(拦截)所述分组(步骤S104 )。 在接收到来自所述邮件系统核心37的所述拦截请求之后,所述TCP2 核心36开始拦截所述分组(步骤S105)。随后,从所述客户端设备A的邮件收发器31向所述TCP2核心36 发送一个用户ID,所述TCP2核心36确认该用户ID的分组(步骤S106), 并且从所述邮件收发器向所述邮件系统核心37发送一则"USER"消息。 所述邮件系统核心37分析所述"USER"消息,并且^t巴所述用户ID暂 时保存在所述存储介质38 (参见图3、图5)中(步骤S107)。在这里, 所述暂时保存表示其中还没有通过口令确认等获得认证的一个步骤,即 用于在认证之后进行正式保存的先前步骤的保存。随后把所述用户ID 发送到与网络40相连的邮件服务器41。从所述邮件服务器41向所述TCP2核心36返回针对所述用户ID的 响应,所述TCP2核心36确认所述用户ID响应消息的分组,并且4巴作为其结果的一则"+0K"消息发送到所述邮件系统核心37(步骤S108)。 所述"+OK"消息是一则告知在所述邮件服务器41中"已识别出用户, 发送口令"的消息。所述邮件系统核心37分析所述"+OK"消息,并 且把来自所述邮件服务器41的所述用户ID响应传送到所述邮件收发器 31 (步骤S09)。接下来,把所述口令消息从所述客户端设备A的现有的邮件收发器 31发送到与所述网络40相连的所述邮件服务器41 。在所述TCP2核心 36中确认发送自所述邮件收发器31的所述口令消息,并且把经过确认 的口令消息的分组发送到所述邮件系统核心37 (步骤S110)。所述邮 件系统核心37接收并分析来自所述TCP2核心36的所述"PASS"消息。 作为所述分析的结果,所述邮件系统核心把所述口令暂时保存在所述存 储介质38中,并且把所述口令发送到与所述网络40相连的所述邮件服 务器41 (步骤Slll )。接下来,当所述口令响应消息从所述邮件服务器41返回到所述客 户端设备A时,所述TCP2核心36确认所述口令响应消息的分组,并 且把所述口令响应消息的分组发送到所述邮件系统核心37(步骤Sl 12 )。 所述邮件系统核心37分析作为所述口令响应消息的所述"+OK"消息 的分组,基于已经寄存在存储介质38中的用户ID和口令来认证所述暂 时保存的用户ID和口令并且获得密钥信息(步骤S113)。随后把所接 收的口令响应发送到所述邮件收发器31 。随后将基于图15描述在所述密钥交换接收侧继续的流程。在接收 到来自所述邮件系统核心37的所述口令响应的发送之后,所述邮件收 发器31发出一则邮件下载请求。所述TCP2核心36确认来自所述邮件 收发器31的所述下载请求的分组,并且将其作为"RETR"消息报告到 所述邮件系统核心37 (步骤S114)。所述邮件系统核心37分析所述 "RTER"消息,并且将所述邮件下载请求发送到与所述网络40相连的 所述邮件服务器41 (步骤SU5)。在这里,所述"RETR"消息是用于 接收由某一参数指定的消息的POP3基本命令。如果把没有消息的一行 指定为一个参数,其被这样配置以便返回"-ERR消息不存在,,。随后从所述邮件服务器41发送一则密钥交换固定形式邮件消息。 所述密钥交换固定形式邮件消息是从连接到所述网络40的客户端设备 B (接收侧)发送到所述客户端设备A的消息(发送侧)。所述TCP2核心36确认所述密钥交换固定形式邮件消息的分组,并 且将其发送到所述邮件系统核心37 (步骤S116)。在接收到所述密钥交换固定形式邮件消息的所述分组之后,所述邮 件系统核心37首先在这里确定所述密钥交换是否将去向所述接收侧(步 骤S117)。例如,如果是在所述客户端设备A与客户端设备B之间发 送及接收加密邮件,那么首先把一则密钥交换固定形式邮件消息从发送 侧客户端设备A发送到接收侧客户端设备B,并且随后把一则密钥交换 固定形式邮件消息从接收侧客户端设备B发送到发送侧客户端设备A。 所述确定步骤SU7是用于确定所述密钥交换是否发送自所述接收侧的 客户端设备B的步骤。如上所述,发送及接收所述加密邮件的两侧都必 须在所述密钥交换中向另一侧互相发送所述密钥交换固定形式邮件。如果在所述确定步骤S117中确定所述密钥交换固定形式邮件消息 是来自所述接收侧(客户端设备B),则所述邮件系统核心37分析所述 "邮件消息",并且"te所述发送方电子邮件地址和所述密钥原始值存4诸 在所述存储介质38中。此外,所述"密钥交换固定形式邮件消息"和 所述"密钥交换邮件接收通知邮件消息"被交换并且被发送到所述邮件 收发器31 (步骤S118)。此时,4巴当前的密钥状态发送到所述TCP2 邮件系统应用单元35,并且将其显示在所述输出设备33上(步骤SU9)。 随后向所述终端的邮件收发器31发送一则密钥交换接收邮件消息。所 述邮件收发器31接收该消息并且将其保存在所述存储介质39中(步骤 S120)。此外,如果在所述确定步骤S117中确定所述密钥交换不是去向接 收侧(客户端设备B),也就是说如果确定所述密钥交换是去向发送侧 (客户端设备A),则所述邮件系统核心37分析所述"邮件消息",并 且把所述发送方电子邮件地址和所述密钥原始值存储在所述存储介质 38中。此外,从所接收的邮件的密钥原始值和保存在所述存储介质38 中的密钥原始值产生一个新密钥。随后,所述"密钥交换固定形式邮件 消息"和所述"密钥交换邮件接收通知邮件消息"被交换并且被发送到 所述邮件收发器31 (步骤S121)。此时,把当前的密钥状态发送到所 述TCP2邮件系统应用单元35,并且将其显示在所述输出设备33上(步 骤S122)。所述邮件收发器31把所接收的"密钥交换邮件接收通知邮件消息"保存在所述存储介质39中(步骤S123 ),并且向所述TCP2核心36发 送消息删除请求"DELE"。所述TCP2核心36确认所述消息删除请求 的分组(步骤S124),并且将其发送到所述邮件系统核心37。所述邮 件系统核心37分析所述消息删除请求"DELE",并且将该消息删除请 求发送到所述邮件服务器41 (步骤S125)。在接收到所述消息删除请求之后,所述邮件服务器4]向所述TCP2 核心36发送消息删除响应,所述TCP2核心36确认所述分组(步骤 S126)。所述邮件系统核心37分析所述消息删除响应的"+OK,,消息, 并且将其发送到所述邮件收发器31 (步骤S127)。在接收到所述消息删除响应之后,所述邮件收发器31向所述邮件 服务器41发送一则终止声明消息"QUIT",接收到所述终止声明消息 的所述TCP2核心36确认其分组(步骤S128 ),并且将其作为 一则"QUIT" 消息发送到所述邮件系统核心37。所述邮件系统核心37分析该"QUIT" 消息,并且向所述邮件服务器41发送所述终止声明(步骤S129)。所述邮件服务器41发出关于所述终止声明的终止声明响应,并且 将其发送到所述客户端设备A的TCP2核心36。随后,所述客户端设备 A的TCP2核心36确认所接收到的终止声明响应的分组,并且将所迷 SMTP响应代码"+OK"消息发送到所述邮件系统核心37(步骤S130)。 所述邮件系统核心37分析所述"+OK"消息,并且将其终止声明响应 发送到所述终端的邮件收发器31 (步骤S131)。相应地,所述密钥交 换接收侧的流程全部完成,并且切断所述客户端设备A的邮件收发器 31与所述邮件服务器41之间的TCP通信。<加密邮件发送侧的流程的描述〉接下来将基于图16到图18的流程图描述所述加密邮件发送侧的流程。首先,在没有中断的情况下从所述TCP2驱动器34的邮件系统核心 37发出针对分组的挂钩请求,其中包括具有所有已登记用户的SMTP 和POP3服务器的IP地址和端口号的那些分组(步骤S132)。在接收 到所述挂钩请求之后,所述TCP2核心36捕获(挂钩)所述分组,其中 包括具有已登记的所有用户的POP3和SMTP服务器的IP地址和端口号 的那些分组(步骤S133 )。随后,在加密邮件发送侧的流程中,由邮件收发器31输入邮件,并且向已经与之完成密钥交换的伙伴发送邮件。此时,在由SMTP做出邮件发送请求之前连接POP3。在该步骤中,通过所述TCP2核心在所述 客户端设备A (终端)与连接到所述网络40的所述邮件服务器41之间 建立TCP通信。在该步骤中,从连接到所述网络40的所述邮件服务器41发送一则 POP3连接消息,所述TCP2核心36接收所述POP3连接消息,并且在 识别出其是POP3端口之后向所述邮件系统核心37通知挂钩结果(步骤 S134)。在接收到来自所述TCP2核心36的所述挂钩结果之后,所述邮件系 统核心37请求所述TCP2核心36拦截所述分组(步骤S135)。在接收 到来自所述邮件系统核心37的所述拦截请求之后,所述TCP2核心36 开始拦截所述分组(步骤S136)。随后,从所述现有的邮件收发器31向所述TCP2核心36发送一个 用户ID,所述TCP2核心36确认该用户ID的分组(步骤S137),并且 从所述邮件收发器向所述邮件系统核心37发送一则"USER"消息。如 在用户登记(参见图8)中所描述的那样,所述"USER"消息是在把客 户端连接到服务器的情况下所发出的POP3基本命令。所述邮件系统核心37分析来自所述TCP2核心36的所述"USER" 消息,并且把所述用户ID暂时保存在所述存储介质38 (参见图3和图 5)中(步骤S137)。在这里,所述暂时保存表示其中还没有通过口令 确认等获得认证的 一个步骤,即用于在认证之后进行正式保存的先前步 骤的保存。随后把所述用户ID发送到与所述网络40相连的所述邮件服 务器41。从所述邮件服务器41向所述TCP2核心3 6返回对所述用户ID的响 应,所述TCP2核心36确认所述用户ID响应消息的分组,并且4巴作为 其结果的一则"+OK"消息发送到所述邮件系统核心37 (步骤S139)。 该"+OK"消息是一则告知在所述邮件服务器41中"已识别出用户, 发送口令"的消息。所述邮件系统核心37分析所述"+OK"消息,并 且把来自所述邮件服务器41的所述用户ID响应传送到所述邮件收发器 31 (步骤S140)。接下来,把所述口令消息从所述客户端设备A的现有的邮件收发器 31发送到与所述网络40相连的所述邮件服务器41 。在所述TCP2核心36中确认发送自所述邮件收发器31的所述口令消息,并且把经过确认的口令消息的分组发送到所迷邮件系统核心37 (步骤S141)。所述邮 件系统核心37接收并分析来自所述TCP2核心36的"PASS"消息。作 为所述分析的结果,所述邮件系统核心37把所述口令暂时保存在所述 存储介质38中,并且^;所述口令发送到与所述网络40相连的所述邮件 服务器41 (步骤S142)。接下来,当所述口令响应消息从所述邮件服务器41返回到所述客 户端设备A时,所述TCP2核心36确认所述口令响应消息的分组,并 且把所述口令响应消息的所述分组发送到所述邮件系统核心37 (步骤 S143)。所述邮件系统核心37接收所述口令响应消息的所述分组,并 且分析该消息。更具体来说,所述邮件系统核心37分析表明所述口令 已被确认的所述"+0K"消息,并且对暂时存储在所述存储介质38中 的所述用户ID和口令进行认证(这是通过将其与寄存在所述存储介质 38中的用户ID和口令进行核对而实现的),并且密钥信息被获取(步 骤S144)。随后,在获取所述密钥信息之后,向所述邮件收发器31发 送口令响应。在接收到所述口令响应之后,所述邮件收发器31向所述TCP2核心 36发送报告所述连接被释放的终止声明(QUIT),所述TCP2核心36 向所述邮件系统核心37报告所述终止声明已被确认(步骤S64)。所述 邮件系统核心37分析所述"QUIT"消息,并且把所述终止声明(QUIT) 发送到与所述网络40相连的所述邮件服务器41 (步骤S65)。随后把终止声明响应从所述邮件服务器41返回到所述TCP2核心 36,所述TCP2核心36确认所述终止声明响应的分组(步骤S145), 并且^;结果发送到所述邮件系统核心37。所述邮件系统核心37分析来 自所述TCP2核心36的所述"+0K"消息,并且把所述终止声明响应传 送到所述邮件收发器31 (步骤S146)。相应地完成切断所述客户端设 备A与连接到所述网络40的所述邮件服务器41 (客户端设备B)之间 的TCP通信。接下来将基于图17描述所述加密邮件发送侧的流程的第二步。 与所述密钥交换发送侧的流程(参见图12)类似,所述第二步开始 于从所述邮件收发器31的SMTP到与所述网络40相连的所述邮件服务 器41的邮件发送请求(步骤S149)。从而通过所述TCP2核心在所述邮件收发器31与所述邮件服务器41之间建立TCP通信。在建立了所述TCP通信之后,从所述邮件服务器41向所述TCP2 核心36发送一则SMTP连接消息,在接收到所述SMTP响应代码"220" 之后,所述TCP2核心36识别出其是SMTP端口 ,并且向所述邮件系统 核心37通知搜索结果(步骤S150)。随后,所述邮件系统核心37请求所迷TCP2核心36接收(拦截) 所述分组(步骤S151 ),接收到所述请求的所述TCP2核心36开始接 收所述分组(步骤S152)。接下来,从所述客户端设备的邮件收发器31发出利用开始声明。 所述利用开始声明是一则从所述客户端设备向所述服务器告知"从现在 开始发送邮件"的消息。所述TCP2核心36确认所述利用开始声明消息 的分组(步骤S153),并且将其作为"HELO" 、"EHLO"消息发送 到邮件系统核心37。所述邮件系统核心37分析所述"HELO" 、 "EHLO"消息,并且 把所述利用开始声明发送到与所述网络40相连的所述邮件服务器41 (步骤S154)。从所述邮件服务器41发出针对所述利用开始声明的利用 开始声明响应,并且在所述TCP2核心36中对其进行确认(步骤S155)。邮件系统核心37分析所述"+0K,,消息,并且把发送自邮件服务 器41的所述利用开始声明响应发送到邮件收发器31 (步骤S156)。随后从邮件收发器31发送一则发送方声明。TCP2核心36确认所 述发送方声明的分组,并且将其发送到邮件系统核心37 (步骤S157)。 所述发送方声明消息是指代"MAILFROM:<"的消息,其通知所述发送 方。所述邮件系统核心37分析该消息,并且向所述邮件服务器41发送 一则发送方声明(步骤S158)。在接收到该发送方声明之后,邮件服务器41发出一则发送方声明 响应。所述TCP2核心36确认发送方声明响应的分组,并且把响应代码 "250"发送到邮件系统核心37 (步骤S159)。所述邮件系统核心37分 析"250"响应代码,并且随后把所接收到的发送方声明响应发送到所 述客户端设备的邮件收发器31 (步骤S160)。随后,所述邮件收发器31发送一则接收方声明消息。所述接收方 声明消息是用来向所述邮件服务器41报告"请发送邮件到以下电子邮 件地址"的消息,并且被表示为"RCPT TO:<"的符号。所述TCP2核心36确认所述接收方声明消息(步骤S161),并且将其发送到所述邮件系统核心37。所述邮件系统核心37分析所述"RCPT TO:<"消息,并且将所述接收方声明发送到所述邮件服务器41 (步骤S162)。
在接收到该接收方声明之后,所述邮件服务器41把一则接收方声明响应返回到所述TCP2核心36,所述TCP2核心36确认所述接收方声明响应,并且将其作为响应代码"250"发送到所述邮件系统核心37(步骤S163)。所述邮件系统核心37分析所述接收方声明响应,并且将其传送到所述客户端终端的邮件收发器31 (步骤S164)。
随后将基于图18描述所述加密邮件发送侧的流程的第三步。更具体来说,接收到所述接收方声明响应的客户端设备A的邮件收发器31发出 一则消息主体开始声明。TCP2核心36确认所述消息主体开始声明的分组,并且将其作为"DATA"消息提供到所述邮件系统核心37 (步骤S165)。在这里,"DATA"是一条SMTP命令,其意味着消息主体发送。所述邮件系统核心37分析所述"DATA"消息,并且把所述消息主体开始声明发送到所述邮件服务器41 (步骤S166)。
在接收到所述消息主体开始声明之后,所述邮件服务器41向所述客户端设备A发送消息主体开始声明响应。随后,所述客户端设备A的TCP2核心36确认所述消息主体开始声明响应的分组,并且将其作为一则"354"消息发送到所述邮件系统核心37 (步骤S167)。在这里,所述响应代码"354"是表明邮件输入开始的SMTP响应代码。
所述邮件系统核心37分析所述"354"消息,并且把发送自所述邮件服务器41的消息主体开始声明响应发送到所述终端的邮件收发器31(步骤S168)。
在接收到该响应之后,邮件收发器31向TCP2核心36发送所述邮件消息,所述TCP2核心确认所述邮件消息分组,并且将其提供到所述邮件系统核心37 (步骤S169)。在接收到所述邮件消息的所述分组之后,所述邮件系统核心37分析所述邮件消息,确认存在接收侧密钥,并且对标题、消息主体以及附件(如果有的话)进行加密(步骤S170 )。随后,邮件系统核心37把所述加密邮件消息发送到与所述网络40相连的所述邮件服务器41。
随后从所述邮件服务器41向所述客户端设备A发送一则发送数据响应消息。所述TCP2核心36确认所述发送数据响应消息的分组,并且将该发送数据响应消息的分组发送到邮件系统核心37 (步骤S171)。在接收到所述发送数据响应消息的分组之后,邮件系统核心37分析该消息。更具体来说,所述邮件系统核心37分析所述SMTP响应代码的"250"消息,并且把所述发送数据响应发送到所述终端(客户端设备A)的邮件收发器31 (步骤S172)。
接收到来自邮件服务器41的发送数据响应的邮件收发器31向所述邮件服务器41发送一则终止声明消息"QUIT"。接收到所述终止声明消息的所述TCP2核心36确认其分组(步骤S173 ),并且将其作为一则"QUIT"消息发送到邮件系统核心37。所述邮件系统核心37分析该"QUIT"消息,并且向邮件服务器41发送一则终止声明(步骤S174)。邮件服务器41发出针对所述终止声明的终止声明响应,并且将其发送到所述客户端设备A。随后,所述客户端设备A的TCP2核心36确认所接收到的终止声明响应的分组,并且将其作为一则SMTP响应代码"221"消息发送到所述邮件系统核心37 (步骤S175)。所述"221"消息是告知连接将被关闭的SMTP响应代码。邮件系统核心37分析"221"消息,并且将其终止声明响应发送到所述终端的邮件收发器31 (步骤S176)。相应地,所述加密邮件发送侧的流程全部完成,并且切断所述客户端设备A的邮件收发器31与邮件服务器41之间的TCP通信。
<加密邮件接收侧的流程的描述〉
接下来将基于图19到图20的流程图描述所述加密邮件接收侧的流程。
如图19中所示,在没有中断的情况下,所述TCP2驱动器34的邮件系统核心37在启动时发出针对捕获分组的挂钩请求,其中包括具有所有已登记用户的SMTP和P0P3服务器的IP地址和端口号的那些分组(步骤S180)。在接收到所述挂钩请求之后,所述TCP2核心36捕获(桂钩)分组,其中包括具有已登记的所有用户的POP3和SMTP服务器的IP地址和端口号的那些分组(步骤S181)。
随后,在现有的邮件收发器31执行邮件接收时,加密邮件接收侧的流程开始。在该步骤中,在所述现有的邮件收发器31与连接到所述网络40的所述邮件服务器41 (参见图4)之间建立TCP通信。换句话说,在包括现有的邮件收发器31的客户端设备A与连接到网络40的邮件服务器41 (客户端设备B)之间建立TCP通信。
38从连接到所述网络40的所述邮件服务器41发送一则P0P3连接消息,所述TCP2核心36接收所述POP3连接消息,并且在识别出其是POP3连接之后向所述邮件系统核心37通知挂钩结果(步骤S183)。
在接收到来自所述TCP2核心36的所述挂钩结果之后,所述邮件系统核心37请求所述TCP2核心36拦截所述分组(步骤S184)。在接收到来自所述邮件系统核心37的所述拦截请求之后,所述TCP2核心36开始拦截所述分组(步骤S185)。
随后,从所述客户端设备A的邮件收发器31向TCP2核心36发送一个用户ID,所述TCP2核心36确认该用户ID的分组(步骤S186),并且从所述邮件收发器向所述邮件系统核心37发送一则"USER"消息。所述邮件系统核心37分析所述"USER"消息,并且把所述用户ID暂时保存(临时储存)在所述存储介质38(参见图3、图5)中(步骤S187)。在这里,所述临时储存意味着其中还没有通过所述口令确认等获得认证的一个步骤,即用于在认证之后进行正式保存的先前步骤的保存。随后把所述用户ID发送到与所述网络40相连的所述邮件服务器41 。
从所述邮件月良务器41向所述TCP2核心36返回对所述用户ID的响应,所述TCP2核心36确认所述用户ID响应消息的分组,并且^/(乍为其结果的一则"+OK"消息发送到所述邮件系统核心37 (步骤S187)。所述"+OK"消息是一则告知在所述邮件服务器41中"已识别出用户,发送口令"的消息。所述邮件系统核心37分析所述"+OK"消息,并且把来自所述邮件服务器41的所述用户ID响应传送到所述邮件收发器31 (步骤S188)。
接下来,把所述口令消息从所述客户端设备A的现有的邮件收发器31发送到与网络40相连的所述邮件服务器41。 TCP2核心36确认发送自邮件收发器31的所述口令消息,并且把被确认口令消息的分组发送到邮件系统核心37(步骤S189 )。邮件系统核心37 "^妻收并分析来自TCP2核心36的所述"PASS"消息。作为所述分析的结果,邮件系统核心37把所述口令暂时保存(临时储存)在存储介质38中,并且把所述口令发送到与网络40相连的邮件服务器41 (步骤S190)。
接下来,把所述口令响应消息从邮件服务器4发送到所述客户端设备A。 TCP2核心36确认所述口令响应的分组,并且把所述口令响应消息的分组发送到邮件系统核心37 (步骤S191 )。邮件系统核心37分析作为所述口令响应消息的所述"+0K"消息的分组,并且从已经寄存
在所述存储介质38中的用户ID和口令以及所述暂时保存的用户ID和口令获得所述密钥信息(步骤S192)。随后把所接收的口令响应发送到邮件收发器31。
随后将基于图20描述在所述加密邮件接收侧继续的流程。在接收到来自邮件系统核心37的所述口令响应的发送之后,邮件收发器31发出一则邮件下载请求。所述TCP2核心36确认来自邮件收发器31的所述下载请求的分组,并且将其作为一则"RETR"消息报告到邮件系统核心37 (步骤S193)。邮件系统核心37分析所述"RTER,,消息,并且将所述邮件下载请求发送到与网络40相连的邮件服务器41 (步骤S194)。在这里,所述"RETR"消息是用于接收由某一参数指定的消息的POP3基本命令。当把没有消息的一行指定为一个参数时,其被这样配置以便返回"-ERR消息不存在,,。
随后,所述邮件服务器41发送下载响应("+OK"消息)和邮件消息。TCP2核心36确-〖人所述下载响应("+OK"消息)和所述邮件消息的分组,并且将其发送到邮件系统核心37 (步骤S195 )。
所述邮件系统核心37分析所述下载响应("+OK"消息)和所述邮件消息,如果其是加密文字,则向所述TCP2邮件应用单元35通知所述"邮件状态,,和发送方的地址。在这里,"邮件状态,,意味着以下情况.'是否"加密文字"、是否"HTML"文件或者是否具有"附件"。应当注意到,所述分组不纟皮发送到所述TCP2邮件应用单元35,而是#皮保留在所述邮件系统核心37中(步骤S196)。在这里,还有可能取决于所述TCP2驱动器34的所实现的模式进行设置,从而把所述邮件消息保存在所述邮件系统核心37的存储介质38中。
所述TCP2邮件系统应用单元35把发送自邮件系统核心37的所述邮件状态和发送方地址显示在输出设备33的显示屏上(步骤S197)。随后,当邮件接收方看到显示在输出设备33上的邮件列表并且按下输入设备32的"接收"按钮时(步骤S198),所述邮件就被接收,并且按照密文的形式通过所述邮件系统核心37把所接收的邮件提供到所述客户端设备A的邮件收发器31 (步骤S199)。
在这里,基本上,密文被提供给所迷邮件收发器31,但是也有可能根据系统设置通过解密单元52 (参见图5)来对其进行解密,以便将明文提供到所述邮件收发器。在步骤S198中,当按下删除按钮而不是接
收按钮时,为之按下删除按钮的邮件就在邮件系统核心37的邮件/附件删除单元54 (参见图5 )中被删除。
按照这种方式,所述下载请求和所接收的邮件消息被发送到所述客户端设备A的邮件收发器31,并且按照密文(取决于具体情况也可能是明文)的形式把所述邮件消息保存在存储介质39中(步骤S200)。邮件收发器31向TCP2核心36发送所述消息删除请求"DELE" 。 TCP2核心36确认所述消息删除请求的分组(步骤S201),并且将其发送到邮件系统核心37。邮件系统核心37分析消息删除请求"DELE",并且将该消息删除请求发送到所述邮件服务器41 (步骤S202 )。
在接收到所述消息删除请求之后,所述邮件服务器41向所述TCP2核心36发送消息删除响应,所述TCP2核心36确认所述分组(步骤S203 )。所述邮件系统核心37分析所述消息删除响应的"+0K"消息,并且将其发送到所述邮件收发器31 (步骤S204 )。
在接收到所述消息删除响应之后,邮件收发器31向所述邮件服务器41发送一则终止声明消息"QUIT",接收到所述终止声明消息的TCP2核心36确认其分组(步骤S205 ),并且将其作为一则"QUIT"消息发送到邮件系统核心37。邮件系统核心37分析该"QUIT"消息,并且向邮件服务器4发送所述终止声明(步骤S206 )。
邮件服务器41发出针对所述终止声明的终止声明响应,并且将其发送到客户端设备A的TCP2核心36。随后,客户端设备A的TCP2核心36确认所接收到的终止声明响应的分组,并且将其作为SMTP响应代码"+0K"消息发送到邮件系统核心37 (步骤S207)。邮件系统核心37分析所述"+OK"消息,并且将其终止声明响应发送到终端的邮件收发器31 (步骤S208 )。相应地,所述加密邮件接收侧的流程全部完成,并且切断所述客户端设备A的邮件收发器31与所述邮件服务器41 (客户端设备B)之间的TCP通信。
<TCP2邮件系统的实施例的描述〉
最后将基于图21简要描述所述TCP2邮件系统的整个流程。如图21中所示,客户端设备A和客户端设备B通过各自的邮件服务器A和邮件服务器B实施邮件通信。首先,从客户端设备A发送密钥交换固定形式邮件,其中该客户端设备A的TCP2驱动器添加并且保存密钥原始值。通过所述邮件服务器A和B把来自该客户端设备A的
所述密钥交换固定形式邮件发送到客户端设备B的TCP2驱动器,在这里由客户端设备B的邮件收发器来保存及接收所述密钥原始值。
接下来,把所述密钥交换固定形式邮件从客户端设备B发送到客户端设备A。在这里,在客户端设备B的TCP2驱动器中添加并保存所述密钥原始值,并且产生一个新密钥。随后通过所述邮件服务器B和A才巴所述密钥交换固定形式邮件发送到客户端设备A。在客户端设备A的TCP2驱动器中保存所述密钥原始值并且产生一个新密钥,随后所述邮件收发器接收所述密钥交换接收邮件。仅仅在初始时间处才实施所述密钥交换固定形式邮件的发送和接收,在随后的邮件传送中不必实施。
从客户端设备A发送邮件。首先,客户端设备A的邮件收发器向TCP2驱动器发送明文邮件,所述TCP2驱动器对该明文邮件进行加密。随后通过所述邮件服务器A和B把所述加密邮件发送到客户端设备B。取决于其设置,客户端设备B的TCP2驱动器将所述加密邮件的密文发送到所述终端的邮件收发器,或者在解密之后的明文状态下将其发送到所述邮件收发器。同样类似地实施从客户端设备B到客户端设备A的邮件发送。上面给出的仅仅是所述TCP2邮件系统的概要。
如上所述,在利用了本发明的TCP2的邮件系统中,利用具有高安全性功能的TCP2来实施邮件传送,从而与根据现有的加密处理的邮件传送相比,特别在数据泄露、篡改、伪装、逼近以及攻击方面施行了极为可靠的保护功能。
本发明不限于上面描述的实施例,应当认识到,在不偏离所附权利要求书中所描述的本发明的范围的情况下,本发明还可以包括各种其他实施例。
参考数字说明
31 -现有的邮件收发器
32 -输入设备
33- 输出设备
34- TCP2马区S力器
35 - TCP2邮件系统应用单元
4236- TCP2核心
37- 邮件系统核心38、 39-存储介质
40 -网络
41 -邮件服务器
50 -认证单元
51 -力口密单元
52 -解密单元
53 -密钥交换单元
权利要求
1、一种客户端设备,其连接到网络并且包括在多个客户端设备之间实施电子邮件通信的现有的邮件收发器,所述设备包括TCP2驱动器,其包括TCP2核心和邮件系统核心;以及除了所述现有的邮件收发器之外的TCP2邮件系统应用单元,其特征在于,所述TCP2核心包括用于识别发送自所述现有的邮件收发器以及SMTP或POP3协议的其中之一的电子邮件的分组并且用于将所述分组发送到所述邮件系统核心的装置,所述邮件系统核心包括用于对所发送及接收的邮件进行加密或解密的装置;用于实施与其他客户端设备的密钥交换的装置;用于保存所述POP3的IP地址和端口以及所述SMTP的IP地址和端口的装置;用于保存用户ID和口令以及发送方和接收方的电子邮件地址的装置;用于保存通过所述密钥交换所形成的密钥的装置;以及用于选择及删除加密邮件、HTML邮件或者附件的装置,所述TCP2邮件应用单元包括用于显示与发送自所述邮件系统核心的电子邮件有关的密钥状态并且用于对所述电子邮件的加密或未加密的状态、发送方的邮件地址、邮件类型以及附件进行列表显示的装置;以及用于以明文来显示由所述现有的邮件收发器接收到的加密邮件的装置,由所述TCP2驱动器来选择及处理经由所述网络接收到的电子邮件,并且随后将其提供给所述现有的邮件收发器,以及把通过所述网络从所述现有的邮件收发器发送到另一个客户端设备的电子邮件设置成在由所述TCP2驱动器确认了所述接收方的所述另一个客户端设备之后被发送。
2、 一种在连接到网络并且包括现有的邮件收发器的多个客户端设 备之间实施电子邮件通信的邮件系统,其特征在于所述客户端设备除了所述现有的邮件收发器外还包括TCP2驱动器 以及TCP2邮件应用单元,其中所述TCP2驱动器包括TCP2核心和邮 件系统核心,所述TCP2驱动器的所述TCP2核心连接到现有的邮件收发器之一 和网络,并且把发送自邮件服务器的SMTP或POP3协议的电子邮件的分组发送到所述邮件系统核心,所述邮件系统核心实施以下操作对所发送及接收的电子邮件实施 加密或解密;实施与发送方或接收方的密钥交换;把所述POP3的IP地 址和端口号、所述SMTP的IP地址和端口号、用户ID和口令、发送方 和接收方的电子邮件地址以及通过所述密钥交换所形成的密钥保存在 存储介质上;以及选择性地删除所述接收的电子邮件,以及所述TCP2邮件系统应用单元实施与发送自所述邮件系统核心的电 子邮件有关的密钥状态的显示,并实施对所发送及接收的邮件的列表显 示以及对由所述现有的邮件收发器所接收到的加密邮件的明文显示。
3、 一种用于在多个连接到网络并且包括现有的邮件收发器的客户 端设备之间实施邮件通信的邮件通信程序,其特征在于在每个客户端设备计算机上实现具有以下3个功能的TCP2邮件系 统功能TCP2核心、邮件系统核心以及除了所述现有的邮件收发器功 能之外的TCP2邮件应用;所述TCP2核心的功能是识别出发送自所述现有的邮件收发器或者 连接到网络的邮件服务器协议SMTP或POP3的电子邮件的分组并且将 所述分组发送到邮件系统核心的功能;所述邮件系统核心的功能是以下功能对所发送及接收的电子邮件 实施加密或解密;实施与发送方或接收方的密钥交换;把所述POP3的 IP地址和端口号、所述SMTP的IP地址和端口号、用户ID和口令、发 送方和接收方的电子邮件地址以及通过所述密钥交换所形成的密钥保 存在存储介质上;以及选择性地删除所接收的电子邮件;所述TCP2邮件系统应用的功能是以下功能实施与发送自所述邮 件系统核心的电子邮件有关的密钥状态的显示,实施对所发送及接收的 邮件的列表显示,实施对由所述现有的邮件收发器所接收到的加密邮件 的明文显示;以及所述各个功能是通过客户端设备计算机实现的。
4、 一种记录有根据权利要求3的程序的记录介质。
全文摘要
本发明涉及一种具有高安全性的邮件系统,所述邮件系统是通过安装用于在客户端设备之间进行邮件传送的TCP2而实现的。本发明涉及一种邮件传送系统,所述邮件传送系统连接到网络并且在配备有现有的邮件收发器的客户端设备之间交换邮件,其中每一个客户端设备都安装有TCP2驱动器。TCP2驱动器34包括TCP2核心36和邮件系统核心37,在该TCP2驱动器34中处理经由所述网络接收到的电子邮件,并且随后将其提供到所述客户端设备的现有的邮件收发器31。在所述TCP2驱动器34的邮件系统核心37中实施对邮件加密和解密的控制以及对不必要的邮件的删除等等。
文档编号H04L9/10GK101558599SQ20068005551
公开日2009年10月14日 申请日期2006年7月31日 优先权日2006年5月30日
发明者小川惠子, 尾崎博嗣 申请人:小川惠子
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1