一种电子邮件加密传输的方法
技术领域
本发明涉及电子邮件传输技术,更具体地说,涉及一种电子邮件加密传输的方法。
背景技术
随着电子邮件应用的越来越广泛,对邮件加密传输也变得越来越重要。目前,电子邮件加密传输有几种实现方式,比如:基于一对密钥的加/解密方式;基于身份密码的传输方式等等。
对于基于一对密钥的加/解密方式,一般在传输加密电子邮件之前,电子邮件接收者需要得到一对密钥。电子邮件接收者会将公钥对外进行发布,自己保留私钥。电子邮件发送者在发送邮件前,先用接收者的公钥对电子邮件内容进行加密,然后将加密后的密文发送给接收者;电子邮件接收者收到密文后,使用自己保留的私钥对密文进行解密。从以上加密传输过程可以看出,这种加密传输实现的前提是电子邮件接收者拥有自己的密钥,并且电子邮件发送者知道接收者的公钥,使用起来十分不方便。
对于基于身份密码传输加密电子邮件的方式,其基本思想是:电子邮件接收者使用自己公开的身份信息,如email地址、手机号码、身份证号码等作为自己的公钥。电子邮件发送者发送邮件之前,使用接收者的公开身份信息对邮件进行加密,然后将加密后的密文发送给接收者;电子邮件接收者收到密文后,使用自己的私钥对密文进行解密。如果电子邮件接收者不知道自己的私钥,就需要到私钥生成中心生成私钥;私钥生成中心通过核实接收者身份信息,颁发对应的私钥。从以上加密传输过程可以看出,即使电子邮件接收者没有密钥,电子邮件发送者也可以给接收者发送加密电子邮件,但需接收者再向认证中心申请颁发密钥,使用不是很方便。
发明内容
有鉴于此,本发明的主要目的在于提供一种电子邮件加密传输技术,发件人事先无需了解收件人的密钥信息,即可向其发送加密邮件,且收件时自动完成邮件解密,简便易实现,满足普通用户对邮件加密传输的需求。
为达到上述目的,本发明的技术方案是这样实现的:
一种电子邮件加密传输的方法,设置邮件收件人地址和密钥收件人地址,该方法还包括以下步骤:
a、在密钥收件人地址不为空时,生成加/解密口令,并对邮件内容进行加密;
b、向邮件收件人地址和密钥收件人地址分别发送经过加密的邮件和解密口令信息;
c、使用密钥收件人地址接收的解密口令信息对收到的邮件解密。
该方法进一步包括,上述密钥收件人地址为:手机号码、不同于邮件收件人地址的电子邮箱地址。
该方法进一步包括,在向密钥收件人地址发送解密口令信息前,先判断密钥收件人地址是电子邮箱地址还是手机号码,如果是电子邮箱地址,则向密钥收件人地址发送包含解密口令的邮件;如果是手机号码,则向手机号码发送包含解密口令的短信;否则不发送解密口令信息。
该方法进一步包括,在发出的密文邮件和解密口令信息间设置相互关联的唯一标识。
该方法进一步包括,设置一个密文关联ID查询表和一个解密口令关联ID查询表,将密文邮件和解密口令的关联标识分别记录在密文关联ID查询表和解密口令关联ID查询表中。
该方法进一步包括:将密文邮件和解密口令的标识进行关联匹配,并解密邮件。
该方法进一步包括:将密文关联ID查询表和一个解密口令关联ID查询表中的密文邮件标识和解密口令的标识进行关联匹配,并解密邮件。
该方法进一步包括:解密邮件后,删除密文关联ID查询表和解密口令关联ID查询表中的对应项。
本发明提供的电子邮件加密传输的方法具有以下的优点和特点:
1、发件人只要知道收件人的多个邮箱地址或收件人的手机号码,即可向收件人发送加密邮件,收件人事先无需拥有密钥,也无需向认证中心申请密钥,提供了一种便捷的发送加密邮件的方式。
2、邮件和密钥不通过同一渠道传输,而是分别向邮件收件人地址和密钥收件人地址传送,提高了安全性。
3、为密文和密钥间确定一对相互关联的唯一的标识,通过密文和密钥的关联匹配在收件时自动解密邮件,更方便用户使用。
正是基于这些优点和特点,本发明提供的方法简便易实现,满足了普通用户对邮件加密传输的需求。
附图说明
图1为本发明方法中邮件发送过程的流程图;
图2为本发明方法中邮件接收过程的流程图;
图3为本发明方法中通过手机短信接收解密口令的阅读邮件过程的流程图。
具体实施方式
下面结合附图对本发明再作进一步详细的说明。
本发明电子邮件加密传输的方法具体包括邮件的发送过程、接收过程和阅读过程。如图1所示,邮件发送过程包含以下步骤:
步骤101:设置两个收件人的地址:一个为邮件收件人地址,一个为密钥收件人地址;这里,密钥收件人地址可以是不同于邮件收件人地址的email地址,也可以是手机号码。
步骤102:邮件发送客户端判断是否填写了密钥收件人地址,如果已填写,则转入步骤103;如果未填写,则与发送普通邮件一样,直接发送邮件原文,之后结束本处理流程。
步骤103:邮件发送客户端生成加/解密口令。
这里,具体如何生成加/解密口令可以采用现有的加密算法实现,此处不再赘述。
步骤104:邮件发送客户端生成邮件关联ID。
这里的邮件关联ID是指存在于密文邮件和对应的解密口令信息间的一对相互关联的唯一的标识,邮件关联ID由客户端自动生成,生成方法可由现有技术实现,如根据简单邮件传输协议(STMP)中的规定生成,在此不再加以详述;
步骤105:使用所生成的加密口令加密邮件原文;
步骤106:判断密钥收件人地址为邮箱地址还是手机号码,如是邮箱地址,则执行步骤107a和步骤108;如是手机号码,则执行步骤107b和步骤108;
步骤107a:向密钥收件人地址发送包含解密口令的邮件,执行步骤108;
步骤107b:向密钥收件人地址发送包含解密口令的短信;
步骤108:发送电子邮件。
其中,步骤107a/107b和步骤108可以同时执行,或先后执行。
如图2所示,邮件接收过程包括以下步骤:
步骤201:邮件接收客户端对是否有新邮件做出判断,如果有新邮件,则转入步骤202,如果没有新邮件,则转入步骤206;
步骤202:判断邮件信头中是否包含邮件关联ID,如果包含,则转入步骤203,如果未包含,则转入步骤205;
这里,所述邮件关联ID是指存在于密文邮件与解密口令信息之间的一对相互关联的标识,包括密文邮件关联ID和解密口令关联ID,用以确定密文邮件和解密口令之间的关联关系。
步骤203:判断邮件关联ID是密文邮件关联ID还是解密口令关联ID,如果是密文关联ID,则执行步骤204a;如果是解密口令关联ID,则执行步骤204b;
步骤204a:将密文关联ID存放在密文关联ID查询表中,执行步骤205;
步骤204b:将解密口令关联ID存放在解密口令ID查询表中;
步骤205:保存接收到的邮件;
步骤206:将密文关联ID查询表中的密文关联ID和解密口令ID查询表中的解密口令关联ID进行匹配;
步骤207:判断有无发现相匹配的邮件关联ID,如果发现,则转入步骤208,如果未发现,则不作处理,结束当前处理流程;
步骤208:使用邮件关联ID相匹配的解密口令对相应的密文邮件进行解密;
步骤209:保存解密后的邮件原文;
步骤210:删除密文关联ID查询表和解密口令关联ID查询表中的对应项,即:删除在本次流程中已经完成关联匹配的邮件关联ID。
由以上步骤,当密钥收件人地址为邮箱时,客户端将通过邮件关联ID匹配自动解密邮件,即可阅读。而当通过短信发送或不发送解密口令时,在邮件接收过程中密文邮件不能被自动解密还原。此时,如图3所示,阅读邮件过程包括以下步骤:
步骤301:判断是否是密文邮件,如果是,则转入步骤302,否则转入步骤305;
步骤302:提示输入解密口令;
步骤303:用输入的解密口令对密文邮件进行解密;
步骤304:保存还原后的邮件原文;
步骤305:显示邮件内容。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。