掌桥专利:专业的专利平台
掌桥专利
首页

一种邮件加密方法、解密方法及加解密系统

文献发布时间:2023-06-19 12:16:29


一种邮件加密方法、解密方法及加解密系统

技术领域

本发明涉及邮件加密领域,特别是涉及一种邮件加密方法、解密方法及加解密系统。

背景技术

伴随网络技术的深入发展,越来越多的人使用电子邮件作为主要通讯工具来进行交流和沟通,在这个过程中电子邮件系统扮演了重要角色。因此,如何避免电子邮件在传输过程中邮件内容不被非法分子窃取和篡改变得尤为重要。

但是,由于电子邮件协议的设计,邮件内容都是以明文的形式在网络中进行传输。任何人都可以利用相关的工具进行拦截和监听,如果不采取相关有效的保护措施,电子邮件中的内容将很容易被攻击者窃取和篡改,这将给我们的工作和生活带来巨大的损失。

为了解决电子邮件的安全性问题,国内外的学者们已经提出了多种解决方案,在这些解决方案中比较成熟的安全算法有:PGP、S/MIME、PEM、MOSS等。同时,这些解决方案基本上都是利用非对称密钥体(PKI/CA)的加解密技术来实现系统安全性的,在使用工程中需要完成对证书的相关操作和管理工作,这直接导致了系统操作的复杂性,不利于安全邮件系统的推广。

发明内容

本发明的目的是提供一种系统复杂性低的邮件加密方法、解密方法及加解密系统。

为实现上述目的,本发明提供了如下方案:

一种邮件加密方法,包括:

接收邮件发送方发送的邮件、接收方邮箱以及邮件发送方身份标识ID;

生成加密秘钥;

采用所述加密秘钥对所述邮件进行加密,得到邮件密文;

采用所述邮件发送方身份标识ID对应的SM9加密参数对所述加密秘钥进行加密,得到加密秘钥密文;所述邮件发送方身份标识ID包括邮件发送方邮箱注册时采用的注册手机号和/或邮件发送方的设备IMEI号;所述SM9加密参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的加密参数;

采用所述邮件发送方身份标识ID对应的SM9签名参数对所述加密秘钥密文进行签名,得到秘钥密文签名;所述SM9签名参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的签名参数;

将所述邮件密文、所述加密秘钥密文以及所述秘钥密文签名发送至邮件接收方。

可选的,在所述采用所述邮件发送方身份标识ID对应的SM9加密参数对所述加密秘钥进行加密之前,还包括:

根据所述邮件发送方身份标识ID生成SM9加密参数和SM9签名参数。

可选的,所述生成加密秘钥,具体包括:

采用加密算法SM4生成所述加密秘钥。

本发明还提供了一种邮件解密方法,包括:

根据邮件发送方身份标识ID对应的SM9签名参数对秘钥密文签名进行验证;

当所述验证通过时,根据所述邮件发送方身份标识ID对应的SM9加密参数对加密秘钥密文进行解密,得到加密秘钥;

采用所述加密秘钥对邮件密文进行解密,得到邮件内容;

将所述邮件内容发送至邮件接收方;

所述邮件发送方身份标识ID、所述加密秘钥密文以及所述邮件密文来自所述邮件接收方;所述邮件发送方身份标识ID包括邮件发送方邮箱注册时采用的注册手机号和/或邮件发送方的设备IMEI号;所述SM9签名参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的签名参数;所述SM9加密参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的加密参数;所述秘钥密文签名为根据所述SM9签名参数对加密秘钥密文进行签名得到的签名;所述加密秘钥密文为根据所述SM9加密参数对加密秘钥进行加密得到的密文;所述加密秘钥为根据加密算法生成的加密秘钥。

本发明还提供了一种邮件加解密系统,包括:秘钥分发中心,所述秘钥分发中心包括:加密模块和解密模块;

所述加密模块用于:

接收邮件发送方发送的邮件、接收方邮箱以及邮件发送方身份标识ID;

生成加密秘钥;

采用所述加密秘钥对所述邮件进行加密,得到邮件密文;

采用所述邮件发送方身份标识ID对应的SM9加密参数对所述加密秘钥进行加密,得到加密秘钥密文;所述邮件发送方身份标识ID包括邮件发送方邮箱注册时采用的注册手机号和/或邮件发送方的设备IMEI号;所述SM9加密参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的加密参数;

采用所述邮件发送方身份标识ID对应的SM9签名参数对所述加密秘钥密文进行签名,得到秘钥密文签名;所述SM9签名参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的签名参数;

将所述邮件密文、所述加密秘钥密文以及所述秘钥密文签名发送至邮件接收方;

所述解密模块用于:

根据邮件发送方身份标识ID对应的SM9签名参数对秘钥密文签名进行验证;

当所述验证通过时,根据所述邮件发送方身份标识ID对应的SM9加密参数对加密秘钥密文进行解密,得到加密秘钥;

采用所述加密秘钥对邮件密文进行解密,得到邮件内容;

将所述邮件内容发送至邮件接收方;

所述邮件发送方身份标识ID、所述加密秘钥密文以及所述邮件密文来自所述邮件接收方。

可选的,所述秘钥分发中心还包括:参数生成模块,所述参数生成模块用于根据所述邮件发送方身份标识ID生成SM9加密参数和SM9签名参数。

可选的,所述加密秘钥采用加密算法SM4生成。

根据本发明提供的具体实施例,公开了以下技术效果:本发明实施例采用基于身份标识的国密SM9算法对邮件内容进行加密,直接使用用户的身份标识作为公钥,避免了非对称密钥体系中复杂的管理密钥过程,降低了邮件加密系统的复杂性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中参数生成流程图;

图2为本发明实施例中邮件的加密方法流程示意图;

图3为本发明实施例中加密签名流程图;

图4为本发明实施例中邮件的解密方法流程示意图;

图5为本发明实施例中验证解密流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种系统复杂性低的邮件加密方法、解密方法及加解密系统。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

本发明实施例提供了一种邮件加密方法,该方法包括加密步骤和解密步骤。当邮件发送方将邮件、接收方邮箱以及邮件发送方身份标识ID发送至邮件加解密系统后,本实施例提供的邮件加解密系统执行上述加密步骤对邮件进行加密,并将加密后的邮件密文以及其他相关参数发送至邮件接收方,邮件接收方在接收到上述邮件密文和其他相关参数后,将上述邮件密文和其他相关参数发送至本实施例提供的邮件加解密系统,该系统执行上述解密步骤实现对上述邮件密文进行解密,最终将解密后的邮件发送至邮件接收方。

下面对加密步骤进行详细介绍

本发明实施例的加密步骤主要基于SM4加密算法、SM9算法进行,其中,主要涉及基于SM4算法生成的加密秘钥以及基于SM9算法生成的SM9加密参数和SM9签名参数。

在一个示例中,参见图1,通过邮件发送方的注册,邮件加解密系统实现邮件发送方对应的SM9加密参数和SM9签名参数的生成。具体可以通过以下方式实现:

根据邮件发送方注册时输入的手机号是否是本机号码,如果是本机号码就使用本机号码来生成SM9签名算法系统参数,否则就使用Android手机IMEI号来生成SM9签名系统参数。根据邮件账号生成SM9加密算法系统参数。具体步骤如下:

(1)创建一个表,以邮件发送方身份标识ID(手机号/IMEI)和邮件发送方邮箱为主键,表中除主键外包括SM9加密参数P

(2)初始化SM9算法参数,参数如下:椭圆曲线类型、椭圆曲线的参数相关参数(q,r,b,beta,alpha1,alph1)、阶为素数N的乘法循环群G

(3)判断邮件发送方在邮件系统账号注册时输入的手机号是否是本机号码,如果是本机号码则使用本机号码作为邮件发送方身份标识ID来生成SM9签名主密钥和用户签名密钥,否则就使用邮件发送方使用的邮件发送设备(比如Android手机)的IMEI号来生成SM9签名主密钥和用户签名密钥。

生成SM9签名主密钥产生随机数ks∈[1,N-1]作为签名主私钥,计算G

根据邮件发送方在邮件系统进行账号注册时输入的邮件账号作为邮件发送方身份标识ID生成SM9系统加密主密钥和用户加密密钥。生成SM9加密主密钥,产生随机数ke∈[1,N-1]作为签名主私钥,计算G

当邮件发送方需要发送邮件时,邮件发送方需要填写接收方邮箱,编辑邮件,将接收方邮箱和自己的身份标识ID发送到邮件加解密系统,参见图2,本实施例提供的邮件加解密系统响应于上述操作,执行以下步骤:

步骤11:接收邮件发送方发送的邮件、接收方邮箱以及邮件发送方身份标识ID;

步骤12:生成加密秘钥。其中,可以采用SM4加密算法生成加密秘钥。

步骤13:采用所述加密秘钥对所述邮件进行加密,得到邮件密文。

步骤14:采用所述邮件发送方身份标识ID对应的SM9加密参数对所述加密秘钥进行加密,得到加密秘钥密文;所述邮件发送方身份标识ID包括邮件发送方邮箱注册时采用的注册手机号和/或邮件发送方的设备IMEI号;所述SM9加密参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的加密参数。

步骤15:采用所述邮件发送方身份标识ID对应的SM9签名参数对所述加密秘钥密文进行签名,得到秘钥密文签名;所述SM9签名参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的签名参数。

步骤16:将所述邮件密文、所述加密秘钥密文以及所述秘钥密文签名发送至邮件接收方。

其中,参见图3,步骤12和步骤13具体可以通过以下方式实现:

(1)初始化SM4参数和定义运算,其参数如下:S盒、系统参数FK=(FK

(2)生成轮密钥,随机生成128位加密密钥MK=(MK

(3)加密邮件内容,将明文分为128bit一组,如果明文字节数是16整数倍,采用补0的方式凑足128位,接下来以其中一组阐述加密过程,设明文输入为(X

步骤14具体可以通过以下方式实现:

查询数据库得到ID、P

(1)计算Q

(2)产生随机数r∈[1,N-1]。计算群G

步骤15具体可以通过以下方式实现:

根据邮件发送方身份识别ID查询数据库得到P

下面对解密步骤进行详细介绍

参见图4,邮件加解密系统执行的解密步骤主要如下:

步骤21:根据邮件发送方身份标识ID对应的SM9签名参数对秘钥密文签名进行验证;

步骤22:当所述验证通过时,根据所述邮件发送方身份标识ID对应的SM9加密参数对加密秘钥密文进行解密,得到加密秘钥;

步骤23:采用所述加密秘钥对邮件密文进行解密,得到邮件内容;

步骤24:将所述邮件内容发送至邮件接收方;

其中,所述邮件发送方身份标识ID、所述加密秘钥密文以及所述邮件密文来自所述邮件接收方;所述邮件发送方身份标识ID包括邮件发送方邮箱注册时采用的注册手机号和/或邮件发送方的设备IMEI号;所述SM9签名参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的签名参数;所述SM9加密参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的加密参数;所述秘钥密文签名为根据所述SM9签名参数对加密秘钥密文进行签名得到的签名;所述加密秘钥密文为根据所述SM9加密参数对加密秘钥进行加密得到的密文;所述加密秘钥为根据加密算法生成的加密秘钥。

步骤21的验证过程具体可以如下:

参见图5,邮件接收方将邮件发送方身份识别ID、加密秘钥密文以及邮件密文C′发送到接收方发送到邮件加解密系统,利用邮件发送方身份识别ID查询数据库得到P

验证通过后,(1)解密加密密钥密文,接收方将加密密钥密文、加密后的邮件M、发送方身份识别ID发送到邮件加解密系统,根据发送方身份识别ID查询数据库d

本发明的有益效果是:密码系统的国密化,同时使用的是基于身份标识的SM9算法,没有传统PKI/CA的证书管理,使得方案更加简洁。

与上述加密方法、解密方法相对应,本发明实施例还提供了一种邮件加解密系统。该系统包括:秘钥分发中心,该秘钥分发中心包括:加密模块和解密模块。

其中,上述加密模块用于:

接收邮件发送方发送的邮件、接收方邮箱以及邮件发送方身份标识ID;生成加密秘钥(加密秘钥可以采用加密算法SM4生成);采用所述加密秘钥对所述邮件进行加密,得到邮件密文;采用所述邮件发送方身份标识ID对应的SM9加密参数对所述加密秘钥进行加密,得到加密秘钥密文;所述邮件发送方身份标识ID包括邮件发送方邮箱注册时采用的注册手机号和/或邮件发送方的设备IMEI号;所述SM9加密参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的加密参数;采用所述邮件发送方身份标识ID对应的SM9签名参数对所述加密秘钥密文进行签名,得到秘钥密文签名;所述SM9签名参数为根据所述邮件发送方身份标识ID,采用SM9算法生成的签名参数;将所述邮件密文、所述加密秘钥密文以及所述秘钥密文签名发送至邮件接收方。

上述解密模块用于:

根据邮件发送方身份标识ID对应的SM9签名参数对秘钥密文签名进行验证;

当所述验证通过时,根据所述邮件发送方身份标识ID对应的SM9加密参数对加密秘钥密文进行解密,得到加密秘钥;

采用所述加密秘钥对邮件密文进行解密,得到邮件内容;

将所述邮件内容发送至邮件接收方;

所述邮件发送方身份标识ID、所述加密秘钥密文以及所述邮件密文来自所述邮件接收方。

在一个示例中,上述秘钥分发中心还包括:参数生成模块,所述参数生成模块用于根据所述邮件发送方身份标识ID生成SM9加密参数和SM9签名参数。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 一种邮件加密方法、解密方法及加解密系统
  • 一种虚拟机加密方法、解密方法及加解密控制系统
技术分类

06120113237322