安全电子邮件格式的传输的制作方法

文档序号:6548273阅读:260来源:国知局
专利名称:安全电子邮件格式的传输的制作方法
技术领域
本发明一般涉及计算机系统,并且特别涉及用于创建和发送安全电子邮件的计算机系统。
背景技术
电子邮件(e-mail)系统在很多情况下包括允许电子邮件消息被数字签名的特征。数字签名是包括在电子邮件消息中的编码值,从而向接收者提供信息,以确认该消息由一个信任的发送者发送和/或该消息在传输过程中没有改变。这样的一个电子邮件系统被认为是安全电子邮件系统。一个公知的安全电子邮件协议是安全多用途因特网邮件扩展协议(S/MIME)。
有两种不同类型的数字签名方案普遍用于安全电子邮件不透明的和透明的。不透明签名是安全电子邮件具有包含在数字签名编码内的消息内容的签名。该方案定义用于消息内容的签名,然后对签名和消息内容二者编码。然后产生的编码数据作为电子邮件消息体传送。
透明签名是数字签名被编码并且作为附件包括在电子邮件消息中的签名。消息内容不被改变并且在电子邮件消息体内以这种不改变的状态发送。
不透明电子邮件消息的优点是消息的内容对于没有被提供合适的信息解码电子邮件消息体的接收者来说是不可用的。此外,由于不能立即可用消息内容,电子邮件网关以某种方式修改消息并且这样使数字签名无效的可能性较小。然而,使用安全电子邮件不透明签名的缺点是很多电子邮件应用(例如,微软公司的Outlook 2000TM)不能在消息预览窗(pane)内显示不透明签名的消息。为了获得消息的预览,要求这样的电子邮件应用的用户打开电子邮件,这样失去了与在电子邮件应用中使用预览查看的相关的优点。此外,如果接收电子邮件应用不支持编码电子邮件使用的协议,不透明签名的电子邮件消息的内容完全不能被查看。
WO/0031944公开了一种在通过防火墙和因特网与本地邮件服务器和远端服务器交互的局域网(LAN)中连接的网关。网关自动及时地为发送者产生证书。它也缓存第三方证书以便它们可用于发送加密和/或签名的消息给远端接收者。当需要输出证书时,网关还自动即时请求第三方证书。
WO/03001326公开了应用安全程序用于传送和接收电子邮件消息的电子邮件防火墙。防火墙使用签名验证程序验证在接收的加密电子邮件消息中的签名,并且被配置以便使用外部服务器。使用外部服务器获取用于加密和解密由防火墙发送和接收的电子邮件消息的数据。
因特网工程任务组(IETF)请求注解(RFC)文档2633公开了发送和接收安全因特网多用途邮件扩展(S/MIME)数据的方法。S/MIME能够用在自动消息传输代理中,自动消息传输代理使用不需人工干预的诸如软件产生消息的签名的加密安全服务。
因此,希望有一种机制允许作为不透明签名创建的安全电子邮件被发送,以允许接收电子邮件应用使用预览查看显示这种电子邮件,或允许这种电子邮件消息的内容可被访问,尽管接收电子邮件应用不支持发送的电子邮件应用的不透明签名协议。

发明内容
按照本发明的一个方面,提供了一种系统和方法,用于传送电子邮件,以提供安全电子邮件的转换,从而允许一接收电子邮件应用使用电子邮件的预览查看或访问消息内容而无需解码数字签名。
按照本发明的另一方面,提供了一种用于传送电子邮件的计算机实现方法,该方法包括下列步骤发送第一安全电子邮件消息给电子邮件服务器,所述消息编址到接收者并且包括不透明签名;
在所述电子邮件服务器处解码所述第一电子邮件消息以提取第一电子邮件消息的内容和提取第一电子邮件消息的数字签名;在电子邮件服务器处产生透明签名的电子邮件消息,所述透明签名的消息包括第一电子邮件消息的被提取内容和被提取的数字签名;和将所述透明签名的电子邮件消息转发给接收者。
按照本发明的另一个方面,提供了上述方法,其中,所述第一电子邮件消息符合S/MIME标准。
按照本发明的另一个方面,提供了上述方法,其中,提取第一电子邮件消息的内容和数字签名的步骤包括步骤标识用于不透明签名电子邮件消息的对象encapContentInfo;从encapContentInfo复制并且删除eContent值;和定义提取的内容和提取的数字签名作为在透明签名的电子邮件消息中的内容和数字签名。
按照本发明的另一方面,提供了上述方法,进一步包括步骤确定是否所述第一电子邮件消息满足一组预定义的、用于转换成透明签名格式的标准。
按照本发明的另一方面,提供了一种用于传送电子邮件的装置,包括一个电子邮件服务器,所述电子邮件服务器包括可执行以接收不透明签名的电子邮件消息的计算机代码;可执行解码不透明签名的电子邮件消息以提取不透明签名的电子邮件消息的内容并且提取不透明签名的电子邮件消息的数字签名的计算机代码;用于产生透明签名的电子邮件消息的计算机代码,所述透明签名的消息包括第一电子邮件消息的被提取内容和被提取的数字签名;和将所述透明签名的电子邮件消息转发给接收者的计算机代码。
按照本发明的另一方面,提供了上述装置,其中,所述第一安全电子邮件消息符合S/MIME标准。
按照本发明的另一方面,提供了上述装置,其中,提取不透明签名的电子邮件消息的内容和数字签名的计算机代码包括步骤标识用于不透明签名的电子邮件消息的对象encapContentInfo;从encapContentInfo复制并且删除eContent值;和定义提取的内容和提取的数字签名作为在透明签名的电子邮件消息中的内容和数字签名。
按照本发明的另一方面,提供了上述装置,进一步包括用于确定所述不透明签名电子邮件消息是否满足一组预定义、用于转换成透明签名格式的标准的计算机代码。
本发明的优点包括这样的性能发送电子邮件应用使用用于输出电子邮件的不透明签名和接收电子邮件应用能够查看消息的内容和/或产生这种安全电子邮件预览而无需解码相关的数字签名。


在仅以本发明的优选实施例作为例子示出的附图中,图1是示出按照优选实施例发送电子邮件的方面的方框图。
图2是示出不透明签名和透明签名的电子邮件消息的单元方框图。
图3是示出按照优选实施例转换不透明签名的电子邮件的流程图。
具体实施例方式
参照一个电子邮件系统描述所述优选实施例,在该电子邮件系统中电子邮件应用将电子邮件转发到电子邮件服务器,用于发送到接收者或接收电子邮件应用。图1的方框图示出了一个这样的设置。发送电子邮件应用10使用电子邮件服务器12处理由电子邮件应用10产生的输出电子邮件。在图1的例子中,接收电子邮件应用14是对来自发送电子邮件应用10的电子邮件的接收者。
参照发送和接收电子邮件应用描述优选实施例。本领域技术人员应理解一个电子邮件应用包括可执行向用户提供操作电子邮件消息的能力的程序代码。典型地,电子邮件应用将向用户提供创建、发送、接收、查看和存储电子邮件消息的功能。也可以在打算用于特定设备的不同的电子邮件应用中提供这些功能的子功能。电子邮件应用的程序代码可以在个人计算机、无线手持设备或打算允许创建或读电子邮件的其它设备上执行。
图1的例子示出了从发送电子邮件应用10转发到电子邮件服务器12的不透明电子邮件16。正如本领域技术人员将理解的,电子邮件应用10可以是很多商业可用或客户化开发的电子邮件系统。然而,电子邮件应用10具有使用不透明签名产生安全电子邮件的性能。在图1的例子中,不透明电子邮件16是由电子邮件应用10产生的电子邮件。
图2是示出具有不透明签名的电子邮件消息的高层单元并且提供具有透明签名的电子邮件的类似描述的方框图。在图2中,用电子邮件消息体20示出了不透明签名的电子邮件的综合例子,电子邮件消息体20示为包含签名22,该签名依次在其编码内包含内容24。如上所述,签名22被编码。而且在图2中,用电子邮件消息体30和电子邮件附件31示出透明签名的电子邮件的综合例子。电子邮件消息体30包括没有在其签名内被编码的内容34。在该透明签名的电子邮件情况下,签名32被编码并且放置在电子邮件附件31中。
正如通过图2中所示的电子邮件格式单元将理解的,当从发送电子邮件应用10发送不透明电子邮件16时,内容仅在电子邮件消息体(图2中示为电子邮件体20)的编码部分中发现。当由具有一个电子邮件应用的接收者接收时,不透明签名的安全电子邮件的消息体被处理,并且签名22被解码以便允许提取和显示内容24。如果接收的电子邮件应用不能解码签名22,那么电子邮件不能用该应用向用户显示。于是,例如,如果使用S/MIME格式用于创建电子邮件并且接收的电子邮件应用不支持S/MIME,电子邮件的内容不能被访问。
此外,在典型的电子邮件应用中,当电子邮件消息列表向用户显示时,有一个可选显示的预览窗。在这些应用中,典型地,预览窗只呈现电子邮件消息内容(或一部分内容)而不解码这些内容。这样,当以一种不透明签名的格式发送电子邮件时,不能在以这样一个接收的电子邮件应用的预览窗查看该消息。
按照优选实施例,电子邮件通过一个电子邮件服务器发送。电子邮件服务器包括用于将不透明签名的电子邮件转换为透明签名的格式的程序代码。这能够在图1的例子中看到。发送电子邮件应用10产生示例的不透明签名的S/MIME格式的电子邮件16。在优选实施例中,在电子邮件被发送到接收电子邮件应用14之前,该电子邮件转发到电子邮件服务器12。按照该优选实施例,电子邮件服务器12的功能包括将不透明签名的消息转换成透明签名的消息的转换功能。正如将理解的,电子邮件服务器12能够解密由发送电子邮件应用10发送的不透明签名的消息。在优选实施例中,电子邮件16的编码是S/MIME编码,并且执行将电子邮件消息16转换成透明签名的格式(电子邮件18)的步骤展示在图3的流程图中。通常,转换步骤包括从不透明签名的电子邮件提取消息内容和数字签名,然后所提取的消息内容和所提取的数字签名包括在电子邮件服务器12发送到接收者的透明签名的电子邮件消息中。
正如在图3中的判决框40中所示,在电子邮件服务器处在转换过程中执行的第一步骤将确定所述电子邮件消息是否是不透明签名的。在S/MIME消息的情况下,通过查看消息的MIME内容类型执行该过程。如果它是多部分/签名(multipart/signed)类型,那么它是透明签名的。否则,执行对消息的加密消息句法(CMS)编码以确定是否它是签名的。然后通过在编码的开始查看contentInfo Object Identifier(内容信息对象标识符)的值并且看它是否指示该消息被签名了来完成上述。如果它被签名了,那么它必定是不透明签名的,否则它可能被加密、压缩或使用某些其它编码机制。如果消息不是透明签名的,那么如在图3的步骤42中所示,消息传递到在传送电子邮件消息到接收者中由电子邮件服务器12另外执行的处理的下一部分。
或者,如果电子邮件服务器确定电子邮件消息是不透明签名的,转换步骤44将处理S/MIME消息的加密消息句法(CMS)编码以解码电子邮件消息。如上指示的,电子邮件服务器12具有可用于允许解码来自电子邮件应用10的、使用优选实施例的S/MIME格式编码的电子邮件消息的合适信息。一旦已经解码电子邮件消息,执行步骤46。转换过程标识S/MIME电子邮件消息的encapContentInfo部分(电子邮件消息对象的部分,在S/MIME标准中,包括消息内容和数字签名)。在转换中的下一步骤(图3中的步骤48)将读取所标识的encapContentInfo的eContent部分。这是消息内容,并且将形成在产生的被转换透明签名的电子邮件消息中的透明消息。作为步骤48的部分,从消息的CMS编码移去eContent部分(随后更新消息的合适长度信息)。产生的CMS编码(不包括eContent)将形成用于被转换的透明签名电子邮件消息的签名。
在转换中的最后步骤将创建多部分/签名类型的MIME消息(新的透明签名的电子邮件消息)。如参照上述步骤描述已经定义用于定义该新消息的信息。图3的步骤50涉及消息对象的创建,该消息对象包括a.不透明签名的电子邮件消息的eContent部分的内容变成透明签名的电子邮件消息的消息部分(见在图2中的内容34);和b.作为多部分/签名消息的其它部分(包括图2中所示的签名32)的签名的CMS编码(移去了eContent)。
上述转换过程的结果是如在图1的例子中所示的透明电子邮件18。该电子邮件被转发到接收电子邮件应用14(如在图1中所示的)。接收电子邮件应用14将输入的电子邮件识别为透明签名的格式。由于非加密(非编码)格式内容的存在,用于接收电子邮件应用14的预览窗能够用于显示某些或所有透明电子邮件18的内容。类似地,接收电子邮件应用不需要支持可读的消息内容的S/MIME格式。在后一种情况下,将理解,由数字签名执行的功能不是有效的(因为该签名不能由不支持用于原始签名产生的加密过程的应用可读)。然而,正如将理解的,尽管缺少可使用的数字签名,读取消息内容的性能是所描述的系统的一潜在的有利特征。
参照通过电子邮件服务器发送的电子邮件描述该优选实施例。这样的一个服务器可以用在下列系统中无线手持设备用于创建电子邮件消息,所述电子邮件消息然后发送到公司服务器用于通过因特网电子邮件连接转发到接收者。该优选实施例的其它实现可以涉及通过以类似于电子邮件服务器的方式操作的其它系统发送和转换电子邮件。通常,用不透明签名格式产生的电子邮件转发到一个计算机系统,该计算机系统包括在将电子邮件发送到接收电子邮件应用之前,允许该电子邮件转换成透明签名的格式的转换功能。将理解,安全电子邮件消息的转换涉及信息的解码或解密并且因此所述的电子邮件服务器最好是安全的,以防止电子邮件转换过程是电子邮件系统的不安全点。
电子邮件服务器典型地通过包括在一个服务器计算机上执行的程序代码的电子邮件服务器应用实现。电子邮件服务器应用可以在计算机代码存储介质诸如磁、光或电存储设备中作为计算机程序产品传递。这样一个电子邮件服务器应用典型地以可执行的形式安装在一个服务器计算机上。所述操作的电子邮件服务器是能够执行描述的操作的装置。
在所述优选实施例中,电子邮件服务器包括执行电子邮件转换的程序代码。电子邮件服务器还执行用于电子邮件应用的其它日志和管理功能。将理解,尽管如所描述的转换电子邮件的电子邮件服务器将经常与发送电子邮件应用相关,这种转换电子邮件服务器与接收电子邮件应用相关也是可能的。在这种情况下,电子邮件服务器可以是接收电子邮件然后重定向电子邮件到合适的接收者设备的公司服务器。如果接收电子邮件应用在无线手持设备上执行,并且电子邮件通过发送电子邮件到桌面目的地并且到无线手持设备的公司服务器路由,这样的配置也是可能的。在这种配置中,与接收电子邮件应用相关的电子邮件服务器可以接收不透明的签名的电子邮件消息。如果关于不透明签名电子邮件消息的编码的合适信息对于电子邮件服务器是可用的,该电子邮件服务器可以将电子邮件消息转换成透明签名的格式。
在优选实施例中,可以可选地调用转换功能。在某些上下文中,即使接收电子邮件应用结果可能不能够访问电子邮件内容,也可能希望不透明签名的电子邮件消息。为此,电子邮件服务器的管理器能够可选地确定是否将该转换功能将应用到由电子邮件服务器处理的电子邮件。进一步的扩展涉及将更复杂的滤波器应用到输入电子邮件以允许电子邮件服务器转换满足一组定义的标准(例如,发送者姓名,接收者姓名,发送者用户组等)的不透明签名电子邮件的管理器。
通过示例已经详细描述了本发明的各个实施例,对本领域技术人员明显的是,可以不脱离本发明进行变化和修改。本发明包括所有这些变化和修改因为它们落入所附权利要求范围之内。
权利要求
1.一种用于传送电子邮件的计算机实现方法,该方法包括下列步骤发送编址到接收者(14)并且包括不透明签名(22)的第一安全电子邮件消息(16)给电子邮件服务器(12);在所述电子邮件服务器(12)处解码所述第一电子邮件消息以提取第一电子邮件消息的内容和提取第一电子邮件消息的数字签名;在电子邮件服务器(12)处产生透明签名的电子邮件消息(18),所述透明签名的消息包括第一电子邮件消息的被提取内容(34)和被提取的数字签名(32);和将所述透明签名的电子邮件消息转发给接收者(14)。
2.如权利要求1所述的方法,其中,所述第一电子邮件消息(16)符合S/MIME标准。
3.如权利要求2所述的方法,其中,提取第一电子邮件消息的内容和数字签名的步骤包括步骤标识(46)用于不透明签名的电子邮件消息(16)的对象encapContentInfo;从encapContentInfo复制并且删除(48)eContent值;和定义(50)提取的内容(34)和提取的数字签名(32)作为在透明签名的电子邮件消息(18)中的内容和数字签名。
4.如权利要求1到3任何之一所述的方法,进一步包括步骤确定所述第一电子邮件消息是否满足一组预定义的、用于转换成透明签名格式的标准。
5.一种用于传送电子邮件的装置,包括电子邮件服务器(12),所述电子邮件服务器包括可执行以接收不透明签名的电子邮件消息(16)的计算机代码装置;可执行以解码不透明签名的电子邮件消息(16)以提取不透明签名电子邮件消息的内容(24)并且提取不透明签名电子邮件消息的数字签名(22)的计算机代码装置;用于产生透明签名的电子邮件消息(18)的计算机代码装置,所述透明签名的消息包括不透明电子邮件消息的被提取内容(34)和被提取的数字签名(32);和将所述透明签名的电子邮件消息(18)转发给接收者(14)的计算机代码装置。
6.如权利要求5所述的装置,其中,所述不透明安全电子邮件消息(16)符合S/MIME标准。
7.如权利要求6所述的装置,其中,提取不透明签名电子邮件消息(16)的内容(24)和数字签名(22)的计算机代码装置实现步骤标识(46)用于不透明签名电子邮件消息的对象encapContentInfo;从encapContentInfo复制并且删除(48)eContent值;和定义(50)提取的内容和提取的数字签名作为在透明签名的电子邮件消息(18)中内容和数字签名。
8.如权利要求5到7任何之一所述的装置,进一步包括用于确定所述不透明签名电子邮件消息(16)是否满足一组预定义的用于转换成透明签名格式的标准的计算机代码装置。
9.一种计算机可读介质,包括用于实现权利要求1到4任何一个方法或权利要求5到8任何一个装置的计算机代码装置。
全文摘要
一种用于提供电子邮件消息给接收电子邮件应用的方法和系统。从发送电子邮件应用发送的电子邮件消息是安全的并且是不透明签名格式。通过解码提取的消息内容和数字签名,不透明签名的电子邮件消息被转换成透明签名电子邮件消息。透明签名的电子邮件发送到接收电子邮件应用。
文档编号G06F13/00GK1694436SQ20051006689
公开日2005年11月9日 申请日期2005年4月30日 优先权日2004年4月30日
发明者迈克尔·K·布朗, 迈克尔·S·布朗, 迈克尔·G·柯卡普 申请人:捷讯研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1