短过滤关键字的加密邮件过滤方法转让专利

申请号 : CN202011577423.1

文献号 : CN112560069B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张帅胡麦芳张珂杰詹士潇谢杨洁吴琛汪小益黄方蕾蔡亮李伟邱炜伟

申请人 : 杭州趣链科技有限公司

摘要 :

本发明公开了一种短过滤关键字的加密邮件过滤方法。本发明存在三种类型参与者,包括邮件发送者、邮件过滤者和邮件接收者。邮件发送者将加密的邮件发送给邮件接收者。每封邮件都附有加密的关键字,邮件过滤者会根据过滤关键字和邮件关键字之间的关系对邮件进行过滤。本发明中的邮件过滤者无法发起对关键字的暴力破解攻击且对于相同的关键字,不论邮件发送者的人数,只要其类型都是一样的,邮件过滤者所需要的过滤关键字的个数都是固定的。

权利要求 :

1.一种基于短过滤关键字的加密邮件过滤方法,其特征在于,该方法包括以下步骤:步骤1、系统参数生成

系统参数包括:一个阶为大素数q的双线性群 及其上的双线性映射 中的一个生成元g,以及一个哈希函数H:步骤2、邮件接收者从 中随机选取一个随机数x,作为邮件过滤私钥,并计算其中 是1到(q‑1)范围内的整数;

邮件接收者公开其邮件过滤公钥y,保留自己的邮件过滤私钥x;

步骤3、邮件发送者在发送邮件前,需要和邮件接收者进行通信,通知其将要发送邮件;

r x

邮件接收者计算u=H(addr) 和v=H(addr) 分别作为邮件发送者的关键字加密公钥和加密私钥,其中addr是邮件发送者的邮件地址;

邮件接收者将(type,r)记录下来,并将(u,v)通过安全信道传递给邮件发送者,type是邮件发送者的类型;

步骤4、当邮件发送者要发送加密邮件给邮件接收者时,邮件发送者进行如下操作:假设被发送的加密邮件所对 应的 关键字是w ,则将关键字w 加密成之后,邮件发送者将邮件的密文、关键字密文w′和关键字加密公钥u发送给邮件过滤者;

步骤5、邮件接收者根据要过滤的关键字w做如下操作:如果需要过滤的关键字只是针对一个邮件地址addr,则邮件接收者计算过滤关键字如果需要过滤的关键字针对的是一类邮件地址,则邮件接收者计算过滤关键字t=Hx x r(w)·H(type)·g;

邮件接收者将过滤关键字t和邮件发送者的关键字加密公钥u′发送给邮件过滤者;

步骤6、当邮件过滤者收到邮件发送者发送过来的邮件密文、关键字密文w′和关键字加密公钥u时,邮件过滤者利用从邮件接收者发送过来的过滤关键字t和关键字加密公钥u′进行过滤操作:当过滤关键字 时,判断w′=t和u=u′是否都成立;如果成立,则进行相应的过滤操作;否则不进行过滤操作;在这种情况下,只能判断w′对应的邮件地址addr的邮件;

当过滤关键字 时,判断 和u=u′是否都成立;如果成立,则进行相应的过滤操作;否则不进行过滤操作;在这种情况下,只需邮件发送者的邮件地址类型是type,过滤操作都能进行。

说明书 :

短过滤关键字的加密邮件过滤方法

技术领域

[0001] 本发明属于信息安全技术领域,涉及一种短过滤关键字的加密邮件过滤方法。

背景技术

[0002] 虽然邮件和关键字都是以密文的形式存在,但是邮件过滤者可以使用暴力破解的方法对关键字进行猜测,从而导致部分邮件信息的泄露。
[0003] 或者对于相同的关键字,邮件过滤者所需要过滤关键字个数和邮件发送者的人数成正比。

发明内容

[0004] 本发明针对现有技术的不足,提供了一种短过滤关键字的加密邮件过滤方法。
[0005] 本发明的技术方案为:
[0006] 步骤1、系统参数生成
[0007] 系统参数包括:一个阶为大素数q的双线性群 及其上的双线性映射 中的一个生成元g,以及一个哈希函数
[0008] 步骤2、邮件接收者从 中随机选取一个随机数x,作为邮件过滤私钥,并计算其中 是1到(q‑1)范围内的整数。
[0009] 邮件接收者公开其邮件过滤公钥y,保留自己的邮件过滤私钥x。
[0010] 步骤3、邮件发送者在发送邮件前,需要和邮件接收者进行通信,通知其将要发送邮件;
[0011] 邮件接收者计算u=H(addr)r和v=H(addr)x分别作为邮件发送者的关键字加密公钥和加密私钥,其中addr是邮件发送者的邮件地址;
[0012] 邮件接收者将(type,r)记录下来,并将(u,v)通过安全信道传递给邮件发送者,type是邮件发送者的类型。
[0013] 步骤4、当邮件发送者要发送加密邮件给邮件接收者时,邮件发送者进行如下操作:
[0014] 假设被发送的加密邮件所对应的关键字是w,则将关键字w加密成[0015] 之后,邮件发送者将邮件的密文、关键字密文w′和关键字加密公钥u发送给邮件过滤者。
[0016] 步骤5、邮件接收者根据要过滤的关键字w做如下操作:
[0017] 如果需要过滤的关键字只是针对一个邮件地址addr,则邮件接收者计算过滤关键字
[0018] 如果需要过滤的关键字针对的是一类邮件地址,则邮件接收者计算过滤关键字tx x r=H(w)·H(type)·g;
[0019] 邮件接收者将过滤关键字t和邮件发送者的关键字加密公钥u′发送给邮件过滤者。
[0020] 步骤6、当邮件过滤者收到邮件发送者发送过来的邮件密文、关键字密文w′和关键字加密公钥u时,邮件过滤者利用从邮件接收者发送过来的过滤关键字t和关键字加密公钥u′进行过滤操作:
[0021] 当过滤关键字 时,判断w′=t和u=u′是否都成立。如果成立,则进行相应的过滤操作;否则不进行过滤操作。在这种情况下,只能判断w′对应的邮件地址addr的邮件;
[0022] 当过滤关键字 时,判断 和u=u′是否都成立。如果成立,则进行相应的过滤操作;否则不进行过滤操作。在这种情况下,只需邮件发送者的邮件地址类型是type,过滤操作都能进行。
[0023] 本发明的有益效果:
[0024] 1、邮件过滤者无法发起对关键字的暴力破解攻击。
[0025] 2、对于相同的关键字,不论邮件发送者的人数,只要其类型都是一样的,邮件过滤者所需要的过滤关键字的个数都是固定的。这里的类型指的是邮件接收者根据自己的意愿将邮件发送者进行的分类结果。

附图说明

[0026] 图1为本发明方法流程图。

具体实施方式

[0027] 在本发明中存在三种类型参与者,包括邮件发送者、邮件过滤者和邮件接收者。邮件发送者将加密的邮件发送给邮件接收者。每封邮件都附有加密的关键字,邮件过滤者会根据过滤关键字和邮件关键字之间的关系对邮件进行过滤。另外在本发明描述中,省略了对邮件本身的加解密部分,因为这部分可以简单地使用一般的混合加密或公钥加密算法完成,在此仅描述关键字加密和过滤部分
[0028] 以下结合附图1详细说明本发明的具体步骤:
[0029] 步骤1、系统参数生成(该步骤可以由权威机构来执行)。
[0030] 系统参数包括:一个阶为大素数q的双线性群 及其上的双线性映射 中的一个生成元g,以及一个哈希函数 系统中所有的人都知晓这些系统参数。
[0031] 其中双线性映射是定义在双线性群 上的一个映射。具体来说,是阶为大素数q的有限循环群,映射 满足下面三个条件:
[0032] 1、双线性:对于 有
[0033] 2、非退化性:存在 使得
[0034] 3、科技酸性:对于任何 都存在一个相同的高效的算法计算
[0035] 当 时,称 对称双线性映射,否则称为非对称双线性映射。
[0036] 步骤2、邮件接收者从 中随机选取1个随机数x,并计算 邮件接收者公开其邮件过滤公钥y,但保留自己的邮件过滤私钥x。
[0037] 步骤3、邮件发送者在发送邮件前,需要和邮件接收者进行通信,通知其将要发送r x邮件。邮件接收者计算u=H(addr) 和v=H(addr) 分别作为邮件发送者的关键字加密公钥和加密私钥。邮件接收者将(type,r)记录下来(同一个type,都使用相同的r。如果已经存在,就不需要重复记录),并将(u,v)通过安全信道传递给邮件发送者。注意,这里addr指的是邮件发送者的邮件地址,而type是邮件发送者的类型(邮件接收者可以根据自己的意愿将邮件发送者分为若干种)。
[0038] 步骤4、当邮件发送者要发送加密邮件给邮件接收者时,邮件发送者进行如下操作(假 设 被发 送的 加 密邮 件 所 对应 的关 键 字是 w) :将 关键 字 w加 密成之后,邮件发送者将邮件的密文、关键字密文w′和其关键字加密公钥u发送给邮件过滤者。
[0039] 步骤5、邮件接收者根据要过滤的关键字w,做如下操作:
[0040] 如果该需要过滤的关键字只是针对一个邮件地址addr,则邮件接收者计算过滤关键字
[0041] 如果该需要过滤的关键字针对的是一类邮件地址,则邮件接收者计算过滤关键字x x rt=H(w)·H(type)·g。
[0042] 最后,邮件接收者将过滤关键字t和邮件发送者的关键字加密公钥u′发送给邮件过滤者。
[0043] 步骤6、当邮件过滤者收到邮件发送者发送过来的邮件的密文、关键字密文w′和其关键字加密公钥u时,邮件过滤者利用从邮件接收者发送过来的过滤关键字t和关键字加密公钥u′进行过滤操作:
[0044] 当过滤关键字 时,判断w′=t和u=u′是否都成立。如果成立,则进行相应的过滤操作;否则不进行过滤操作。注意,在这种情况下,只能判断w′对应的邮件地址addr的邮件。
[0045] 当过滤关键字 时,判断 和u=u′是否都成立。如果成立,则进行相应的过滤操作;否则不进行过滤操作。注意,在这种情况下,只需邮件发送者的邮件地址类型是type,过滤操作都能进行。