首页> 中国专利> 一种基于SM2公钥加密算法的广播加密方法

一种基于SM2公钥加密算法的广播加密方法

摘要

本发明涉及一种基于SM2公钥加密算法的广播加密方法,包括密钥生成步骤:接收者生成对对应的公私钥对,公私钥对包括接收者的私钥和公钥;广播加密步骤:发送方生成一个临时解密私钥,并基于椭圆曲线计算与临时解密私钥相关的多项式系数,然后基于椭圆曲线点群的生成元计算一个临时加密公钥,根据临时加密公钥生成一个加密密文,最后输出包含了加密密文、多项式系数、以及临时加密公钥的广播加密密文;接收方解密步骤:接收方重构广播加密步骤中得到的多项式系数,根据接收者的私钥以及多项式系数计算临时解密私钥,最后利用临时解密私钥获得消息。本发明具有安全性高、计算简单特点,可以实现高效的数据机密性保护和数据授权访问控制。

著录项

  • 公开/公告号CN113872757A

    专利类型发明专利

  • 公开/公告日2021-12-31

    原文格式PDF

  • 申请/专利权人 武汉大学;

    申请/专利号CN202111110973.7

  • 申请日2021-09-23

  • 分类号H04L9/08(20060101);H04L9/30(20060101);

  • 代理机构42222 武汉科皓知识产权代理事务所(特殊普通合伙);

  • 代理人鲁力

  • 地址 430072 湖北省武汉市武昌区珞珈山武汉大学

  • 入库时间 2023-06-19 13:29:16

说明书

技术领域

本发明涉及计算机领域,尤其是涉及一一种基于SM2公钥加密算法的广播加密方法。

背景技术

当今随着云计算、物联网及移动互联网等技术的迅速发展,每年新增数据量呈现爆炸式增长态势。据统计,平均每秒都有200万用户在使用谷歌搜索,Facebook用户每天共享的信息超过40亿条,Twitter每天处理的推特数量超过3.4亿条,等等。除此之外,在科学计算、医疗卫生、金融、零售业等各个行业,每天都有大量数据源源不断地产生,越来越多的人们开始意识到我们已经进入大数据时代。

然而大数据普遍存在巨大的数据安全需求。大数据由于价值密度高,往往成为众多黑客觊觎的目标,吸引了大量攻击者铤而走险。例如,全球互联网巨头雅虎曾被黑客攻破了用户账户保护算法,导致数以亿级的用户账户信息泄露。雅虎证实其在2013年与2014年分别被未经授权的第三方盗取了超过10亿和5亿用户的账户信息,内容涉及用户姓名、电子邮件、电话号码、出生日期和部分登录密码。

经典的数据安全需求包括数据机密性、完整性和可用性等,其目的是防止数据在数据传输、存储等环节中被泄露或破坏。加密技术是实现敏感数据机密性保护的重要措施之一,主要有两大类加密技术:一类是对称加密,另一类是公钥加密。对称加密的特征是加密密钥和解密密钥一样或容易相互推导;公钥加密(也称非对称加密)的特征是加密密钥和解密密钥不同,并且从加密密钥难以推出解密密钥。国家密码管理局于2010年12月发布了SM2椭圆曲线公钥密码算法,其安全性基于椭圆曲线群上的计算离散对数困难问题,具有密钥更短、加密速度更快等优良特性。

1993年,Fiat等研究者首次提出广播加密(Broadcast Encryption)的概念。广播加密是一种在公开信道上实现群组用户密文数据传输的密码体制,发送者选取任意用户集合进行数据加密,只有授权用户才能正确解密得到明文数据,而其它用户即使合谋也无法获得明文数据。广播加密这种“一对多”的工作方式,效率比传统的“点对点”的通信方式更高,在数字版权保护、付费电视、多媒体保护、文件保护、安全电子邮件等领域有广泛的应用前景。

科研人员已经提出了多种不同特性的广播加密算法,但均以国外密码算法和标准为核心进行实现,无法满足我国网络空间安全自主创新的发展需求。本发明设计了一种基于SM2公钥加密算法的广播加密方法,可以实现多个接收者中的任何一个都可以正确解密密文并得到明文消息,而其他人则无法正确解密,有效实现数据的授权访问和机密性保护。

发明内容

本发明的上述技术问题主要是通过下述技术方案得以解决的:

一种基于SM2公钥加密算法的广播加密方法,其特征在于,包括:

密钥生成步骤:t个接收者生成对对应的公私钥对,公私钥对包括接收者的私钥和公钥;

广播加密步骤:发送方生成一个临时解密私钥,并基于椭圆曲线计算与临时解密私钥相关的多项式系数,然后基于椭圆曲线点群的生成元计算一个临时加密公钥,根据临时加密公钥生成一个加密密文,最后输出包含了加密密文、多项式系数、以及临时加密公钥的广播加密密文;

接收方解密步骤:接收方重构广播加密步骤中得到的多项式系数,根据接收者的私钥以及多项式系数计算临时解密私钥,最后利用临时解密私钥获得消息。

在上述的一种基于SM2公钥加密算法的广播加密方法,密钥生成步骤具体包括:

每个参与方P

t个接收者把自己的公钥发给消息发送方,记发送方接收到的公钥集合为PK={PK

在上述的一种基于SM2公钥加密算法的广播加密方法,广播加密步骤具体包括:

步骤3.1、发送方生成随机数

步骤3.2、发送方计算临时加密公钥TPK=tsk·P,其中P是SM2椭圆曲线点群的生成元;

步骤3.3、发送方计算与临时解密私钥相关的多项式系数

其中h

此时与临时解密私钥相关的多项式系数可以构成私钥多项式φ(x)=w

步骤3.4、发送方利用临时加密公钥TPK,生成消息m的SM2加密密文(C

步骤3.5、发送方输出广播加密密文

在上述的一种基于SM2公钥加密算法的广播加密方法,接收方解密步骤中,每个接收者P

步骤4.1、P

步骤4.2、P

和tsk·PK

步骤4.3、P

本发明与现有技术相比具有如下优点和有益效果:首先,目前现有的普通的SM2公钥加密算法,虽然能够实现快速的数据加密,但是当需要把相同消息加密发送给多个接收者时,需要分别进行加密,由此带来的计算复杂度与接收者个数成正比,即接收者越多,发送者的计算负担越大,在大规模应用场景下难以适用。其次,这种分别加密的方法本身无法保证多个接收者解密得到相同的消息,需要增加额外的一致性校验,例如零知识证明或承诺,带来更多的计算和通信成本。本发明实现了基于SM2公钥加密算法的广播加密功能,不仅实现近似常数级的数据加密计算开销,同时保证多个接收者可以获得相同数据。本发明的安全性基于SM2公钥加密算法的可证明安全性和Diffie-Hellman困难假设,保证只有预先设定的接收者(即算法中与PK

附图说明

附图1是本发明的一种方法流程图。

具体实施方式

下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。

实施例:

本发明的目的在于基于SM2公钥加密算法,提出多个接收者中的任何一个都可以正确解密密文并得到明文消息、而其他人则无法正确解密的广播加密算法,下面给出具体描述。

在以下对本方案的描述中,若P、Q是椭圆曲线群中的元素(点),则P+Q表示P、Q的点加,k·P表示k个椭圆曲线点P的点加,即P+P+...+P(共有k个P);省略号“...”,表示多个同样(类型)的数据项或多个同样的运算;c

在基于SM2公钥加密算法的广播加密方案的设计中,假设有1个发送方和t个接收者,t个接收者的公钥分别为PK

(sk,PK)←SM2.Gen(1

(C

m←SM2.DEC(sk;C

(SM2公钥加密算法细节参见国家密码管理局于2010年12月公布的《SM2椭圆曲线公钥密码算法》规范。)

本方案包含三个算法:密钥生成算法、广播加密算法和接收方解密算法。

1.密钥生成算法

假设有t个接收者,每个参与方P

t个接收者把自己的公钥发给消息发送方,记发送方接收到的公钥集合为PK={PK

2.广播加密算法

发送方在本阶段利用密钥生成阶段的密钥信息,产生关于消息m的广播加密密文,具体应实现以下步骤:

A1:发送方生成随机数

A2:发送方计算临时加密公钥TPK=tsk·P,其中P是SM2椭圆曲线点群的生成元。

A3:发送方计算与临时解密私钥相关的多项式系数

其中h

此时与临时解密私钥相关的多项式系数可以构成私钥多项式φ(x)=w

A4:发送方利用临时加密公钥TPK,生成消息m的SM2加密密文(C

A5:发送方输出广播加密密文

3.接收方解密算法

每个接收者P

B1:P

B2:P

和tsk·PK

B3:P

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号