首页 / 专利库 / 电脑安全 / 密码学 / 一种基于双线性映射技术的联盟链加密方法

一种基于双线性映射技术的联盟链加密方法

阅读:86发布:2020-05-08

专利汇可以提供一种基于双线性映射技术的联盟链加密方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于双线性映射技术的联盟链加密方法,包括:(1)采用基于双线性映射技术实现联盟链加密系统的构建,包括公钥和私钥的生成和设置、加密函数的选择;(2)采用基于双线性映射技术加密密钥,采用密钥协商的方式进行密钥分发;(3)基于上述模型和密钥分发方法,基于双线性映射技术实现密钥交换、明文加密和数字签名过程。本发明的双线性映射技术是 密码学 中常用的加密技术,结合哈希函数,实现构造具有签字短、安全、高效等特点的签名方案进行加密、对签名进行验签,提高了加密的效率,进而具有提高系统整体工作效率的功能。,下面是一种基于双线性映射技术的联盟链加密方法专利的具体信息内容。

1.一种基于双线性映射技术的联盟链加密方法,其特征在于,包括:
(1)采用基于双线性映射技术实现联盟链加密系统的构建,包括公钥和私钥的生成和设置、加密函数的选择;
(2)采用基于双线性映射技术加密密钥,采用密钥协商的方式进行密钥分发;
(3)基于上述模型和密钥分发方法,基于双线性映射技术实现密钥交换、明文加密、数字签名和验签过程。
2.根据权利要求1所述基于双线性映射技术的联盟链加密方法,其特征在于,所述步骤(1)具体包括:
1.1首先确定系统安全参数,私钥生成中心完成私钥设置和私钥提取设置;
1.2接着私钥生成中心选择加法循环群和乘法循环群,定义循环群生成元;
1.3选取双线性映射和哈希函数;
1.4之后随机选取一个数作为主密钥;
1.5计算敌手优势定义,确定明文空间;
1.6设置公钥,确定公钥生成公布系统参数。
3.根据权利要求1所述基于双线性映射技术的联盟链加密方法,其特征在于,所述步骤(2)的具体实现步骤包括:
2.1用户利用随机数生成器生成随机数当做己方选择的私钥并保存;
2.2数据中心计算私钥生成元并分成n份发送给其他用户,发送的消息和私钥生成元的哈希;
2.3用户收到上一轮发来的消息,先验证签名,再解密得到每个用户的私钥生成元,然后选择一个随机数计算前两个随机私钥生成元,将随机私钥生成元的哈希值的消息和哈希值,以及加密后的随机私钥生产元的哈希值的消息和哈希值分别发送给参与者前两个用户,并将交易记录及私钥生成元的哈希值写入账本;
2.4利用加密算法,加密私钥;
2.5用户按照2.4的方式得到后两个随机私钥生成元,计算会话密钥份额,将加密后的会话密钥消息及哈希值,分别发送给其余的用户;
2.6用户得到会话密钥后,计算总会话密钥。
4.根据权利要求3所述基于双线性映射技术的联盟链加密方法,其特征在于,其中,所述步骤2.2相当于用户把自己的公钥分发给了系统中参与的每个用户,没有参与的用户不需要处理,其中私钥生成元要写入联盟链账本。
5.根据权利要求3所述基于双线性映射技术的联盟链加密方法,其特征在于,其中,所述步骤2.4包括:用私钥加密算法加密前两个私钥相当这两个私钥分别用私钥加密算法加密。
6.根据权利要求1所述基于双线性映射技术的联盟链加密方法,其特征在于,所述步骤(3)具体步骤包括:
3.1定义好双线映射模型,并搭建好密钥加密和协商方式后,私钥生成中心选取私钥,公布公钥,然后进行公钥交换;
3.2发送方将发送的明文用双线性映射生成消息摘要,用加密算法对明文进行加密,得到明文的密文;
3.3发送方使用自己的私钥对生成的消息摘要进行加密,得到摘要的签名;
3.4发送方将用于加密算法的密钥和双方共享的私钥用接收者的公钥进行加密形成密文;
3.5把明文的密文、摘要的签名和密钥的密文发送给接收者;
3.6采用双线性搭建好的双线性映射方案对签名进行验证。
7.根据权利要求6所述基于双线性映射技术的联盟链加密方法,其特征在于,所述基于双线性映射技术的联盟链加密方法,采用非对称加密方式结合对称加密方法进行密钥加密与分发,采用双线性映射结合哈希函形成签名,采用双线性映射技术对签名进行验签。

说明书全文

一种基于双线性映射技术的联盟链加密方法

技术领域

[0001] 本发明属于链技术领域,具体涉及一种基于双线性映射技术的联盟链加密方法。

背景技术

[0002] 区块链技术集合各种技术,是时下新兴的技术。加密技术是区块链最重要的基础技术之一,保障了区块链上通信和交易的安全。联盟链是区块链的一种。联盟链采用PKI(公钥基础设施)技术保障交易过程的安全,PKI技术采用对称加密和非对称加密混合的加密方式对通信过程进行加密保护。非对称加密安全性高,但通常运算性能低下,需要做大量数据加解密,所以通常利用非对称加密方法实现对称密钥的安全交换,并采用数字签名技术进行标记。
[0003] 数字签名技术作为保证信息安全的重要手段之一,被广泛应用于各种需要身份认证的安全系统中,一方面保障数据的完整传输,另一方面确保传输的信息或数据安全可信没有受到篡改。随着各种密码技术的不断发展,各种信息安全应用场景对数字签名的实用性提出了越来越高的要求。
[0004] 哈希函数实现原理简单,破解过程复杂,是常用于区块链的数字签名技术。实现方式为:对需要加密的原文进行数字签名生成摘要,即对需要加密的原文通过一类特殊的散列函数生成数字签名。使用哈希函数的特征是:(1)输入需要加密的原文数据没有长度限制;(2)对输入的任何长度的原文数据能够生成该原文固定长度的摘要输出;(3)从原文能方便地算出摘要;(4)从指定的摘要生成原文再由原文反推出指定的摘要十分困难;(5)两个不同的原文几乎无法生成相同的摘要。当数字签名的长度为128位时,任意两个原文具有完全相同的数字签名的概率10-24,即接近于0的重复率,这使得数字签名很容易发现原文的关键位是否被篡改。但是也是由于哈希函数的此种特性,加上64轮的加密轮次,导致签名和验证签名的效率比椭圆曲线加密技术(ECC)低。
[0005] 双线性映射能是ECC的一种,在多方安全计算和数据协作共享中发挥关键的作用。其构建过程令G1、G2和GT为3个阶为素数的循环群,g1、g2和g3分别为3 个循环群的生成元,则双线性映射e:G1×G2→GT具有以下性质:(1)双线性:所有 g1∈G1,g2∈G2,a,b∈Zq,满足(2)非退化性: g2∈G2,满足e(g1,g2)≠1;(3)可计算性:
g2∈G2, (4)安全性:解G1、G2和 G3中的离散对数问题是困难的。双线性
映射的加密方法通常签名短,但是实现算法复杂。
[0006] 现阶段,结合各种加密方式的优点进行组合得到的方案已经实施在各种区块链应用场景中。例如PKI技术内包含对称密码算法如DES、AES等,非对称密码算法如RSA、ECC等,哈希或散列函数如SHA、MD5等,现有的PKI技术能够基本满足链上通信安全,但是依然存在效率和安全性的缺陷问题。总而言之,加密技术结合各种加密方式,是时下研究的热点问题,如何达到各种组合加密方法有效配合得到更加优良的加密方式一直受到人们的广泛的关注。

发明内容

[0007] 本发明基于上述背景和现有技术所存在的问题,拟设计一种基于双线性映射技术的联盟链加密方法,其在满足保证数字签名安全的前提下能够提高加密验签效率。本发明另一个目的是通过双线性映射的方法,可以结合DH非对称加密算法密钥交换方法,提高加密系统的加解密的效率,以避免在解密过程中遭受攻击使得信息泄露的险。双线性映射构造的签名方案具有签字短、安全、高效等特点,利用双线性映射结构构造的数字签名方案得到了广泛的应用,本发明利用双线性映射结合哈希函数实现构造具有签字短、安全、高效等特点的签名方案,利用这种方案进行加密、对签名进行验签,提高了加密的效率,进而具有提高系统整体工作效率的功能。
[0008] 为了实现本发明的这些目的和其它优点,提供了一种基于双线性映射技术的联盟链加密方法,具体实现步骤包括:
[0009] (1)采用基于双线性映射技术实现联盟链加密系统的构建,包括公钥和私钥的生成和设置、加密函数的选择;
[0010] (2)采用基于双线性映射技术加密密钥,采用密钥协商的方式进行密钥分发;
[0011] (3)基于上述模型和密钥分发方法,基于双线性映射技术实现密钥交换、明文加密和数字签名过程。
[0012] 优选的是,其中,所述步骤(1)的实现步骤如下:
[0013] 1.1首先确定系统安全参数,私钥生成中心完成私钥设置和私钥提取设置;
[0014] 1.2接着私钥生成中心选择加法循环群和乘法循环群,定义循环群生成元;
[0015] 1.3选取双线性映射和哈希函数;
[0016] 1.4之后随机选取一个数作为主密钥;
[0017] 1.5计算敌手优势,确定明文空间;
[0018] 1.6设置公钥,确定公钥生成公布系统参数。
[0019] 进一步地,可利用多个循环群结合多个哈希函数构成公钥生成公布系统参数。
[0020] 其中,无证书密码体制中,敌手有两种类型,一种类型的敌手可以任意替换用户的公钥但不知道主钥;另一种敌手知道主密钥,但是不能替换用户的公钥。根据敌手类型不同,不可区分性和不可伪造性具有不同的特点:
[0021] 定义1:不可区分性的特点包括:若敌手在概率多项式时间内以不可忽略的优势获胜,则称无证书的多接收者签密方案在适应性选择密文具有不可区分性。
[0022] 定义2:不可伪造性的特点包括:若敌手在概率多项式时间内以不可忽略的优势获胜,则称无证书的多接收者签密方案在合适性选择消息攻击下具有不可伪造性。
[0023] 优选的是,所述步骤(2)的实现步骤如下:
[0024] 2.1用户利用随机数生成器生成随机数当做己方选择的私钥并保存;
[0025] 2.2数据中心计算私钥生成元并均分发送给其他用户,发送的消息和私钥生成元的哈希。这相当于用户把自己的公钥分发给了系统中参与数据共享的每个参与者,没有参与的用户不需要处理,其中私钥生成元要写入联盟链账本;
[0026] 2.3用户收到上一轮发来的消息,先验证签名,再解密得到每个用户的私钥生成元,然后选择一个随机数计算随机私钥生成元,将随机私钥生成元的哈希值的消息和哈希值,以及加密后的随机私钥生产元的哈希值的消息和哈希值分别发送给每个用户,并将交易记录及私钥生成元的哈希值写入账本;
[0027] 2.4利用加密算法加密子私钥,用私钥加密算法加密前两个私钥相当这两个私钥分别用私钥加密算法加密,即:
[0028]
[0029]
[0030] 2.5用户按照步骤2.4的方式加密子私钥后,计算后两个随机子私钥生成元,计算会话密钥份额,将加密后的会话密钥消息及哈希值,分别发送给其余的用户;
[0031] 2.6用户得到会话密钥份额后计算会话总密钥。
[0032] 优选的是,所述步骤(3)的实现步骤如下:
[0033] 3.1定义好双线映射模型,并搭建好密钥加密和协商方式后,私钥生成中心选取私钥,公布公钥,然后交换公钥;
[0034] 3.2发送方将发送的明文用双线性映射生成消息摘要,用加密算法对明文进行加密,得到明文的密文;
[0035] 3.3发送方使用自己的私钥对生成的消息摘要进行加密,得到摘要的签名;
[0036] 3.4发送方将用于加密算法的密钥和双方共享的私钥用接收者的公钥进行加密形成密文;
[0037] 3.5把明文的密文、摘要的签名和密钥的密文发送给接收者;
[0038] 3.6采用双线性搭建好的双线性映射方案对签名进行验证。
[0039] 进一步地,所述基于双线性映射技术的联盟链非对称加密方法,采用非对称加密方式对对称加密密钥进行分发与加密,采用哈希函数对明文进行签名形成摘要,采用双线性映射技术对签名进行验签。
[0040] 本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。本发明至少包括以下有益效果:
[0041] 1.提出采用双线性映射技术实现联盟链密钥协商与分发的方法,提高了密钥生成和分发的效率;
[0042] 2.采用哈希函数和双线性映射分别对明文进行签名生成摘要,并通过双线性映射技术对签名进行验证,由于双线性映射技术形成的签名短,验签的效率得到提升。附图说明
[0043] 图1为基于双线性映射技术的联盟链加密的整体模型构建图;
[0044] 图2为基于双线性映射技术的密钥分发方法流程;
[0045] 图3为本发明加密方法流程图

具体实施方式

[0046] 为了清晰地阐述本发明,使本发明实施例的目的、技术方案和优点更加清楚,下面结合了本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,以令本领域技术人员参照说明书文字能够据以实施。下面将附图结合具体实施方式对本发明的技术加以详细说明。Zn*表示Zn中可逆元素的乘法群,Zn是n 的整数集合,用户Ui。
[0047] 1.图1示出了根据本发明基于双线性映射技术的联盟链加密的整体模型构建的一种实现形式,其构建流程为:
[0048] 第1步:首先选择系统安全参数k和l;
[0049] 第2步:接着私钥生成中心C选择加法循环群和乘法循环群:令G1、G2是素数q阶乘法循环群,GT是素数q阶乘法循环群,定义循环群生成元g1、g2、g3;
[0050] 第3步:选取双线性映射e:G1×G2→GT和4个Hash函数: H1:{0,1}*→G1,H2:{0,1}*→{0,1}l,H3,H4:
[0051] 第4步:私钥生成中心C完成私钥设置:随机选取一个数 作为主密钥;私钥提取设置:C计算Di=xH1(Ui)并将Di传给用户Ui;
[0052] 第5步:计算敌手优势P,确定明文空间Ω∈{0,1}l;
[0053] 第6步:设置公钥:用户Ui计算Ei=e(H1(IDi),P),i=1,2,……,n,其中IDi为用户的身份信息。并设置完整的公钥格式为(Ei,Ti),确定公钥生成公布系统参数par={G1,G2,GT,P,q,e,H1,H2,H3,H4}。
[0054] 可利用多个循环群结合多个哈希函数构成构成公钥生成公布系统参数。实施例中代表性符号都可以用其他具有相同功能的事物替代,采用这种通过双线性映射技术进行加密的方案的有利之处在于高效率加密性。
[0055] 2.图2示出了基于双线性映射技术的密钥分发方法流程,令:G1和G2是两个阶位素数q的乘法循环群,双线性映射e:G1×G2→G2,g是G1的生成元;sigi(m) 表示参与者签名;表示参与者的公钥加密算法, 表示参与者的私钥加密算法;H为Hash函数;Zn是n的整数集合,C表示数据中心,U代表用户。这里说明的符号数量和处理方式是用来简化本发明的说明的。对本发明的模式的应用、修改和变化对本领域的技术人员来说是显而易见的。结合实施例说明具体实现步骤如下:
[0056] 第1步:用户Ui利用随机数生成器生成随机数当做己方选择的私钥si并保存;
[0057] 第2步:C计算 并分成n份发送给其他Uj(1≤j≤n,j≠i),发送sigi(H(mi)) 和其中 将 写入联盟链账本;
[0058] 第3步:Ui收到上一轮发来的消息,先验证签名,再解密得到每个用户的 然后选择一个随机数ri计算 sigi(H(mi’))和H(Zi),sigi (H(mi”))和H(Mi)分别发送给用户Ui-1和Ui-2。其中 并将交易记录及H(Zi)、
H(Mi)写入账本;
[0059] 第4步:加密子私钥:
[0060]
[0061]
[0062] 第5步:Ui加密子密钥后,计算 计算会话密钥份额将sigi(mi”’)和H(ki)(i≠j,i,j=1,2,……,n),其中
分别发送给Uj(1≤j≤n,j≠i);
[0063] 第6步:Ui得到ki后,计算会话密钥
[0064] 3.图3示出了本发明加密方法流程图,按照实施例的实现步骤如下:
[0065] 第1步:定义好双线映射模型,并搭建好密钥加密和协商方式后,私钥生成中心选取私钥si,公布公钥ki,加密算法的密钥d和会话密钥K,采用DH非对称加密算法相互交换公钥;
[0066] 第2步:发送方A将发送的明文m用双线性映射生成消息摘要M,用加密算法对m进行加密,得到m的密文Cm;
[0067] 第3步:A使用自己的sAi对生成的M进行加密,得到摘要的签名CM;
[0068] 第4步:A将d和K用接收者B的kBi进行加密形成密文CdK;
[0069] 第5步:把m的Cm、CM和CdK发送给B;
[0070] 第6步:采用双线性搭建好的双线性映射方案对签名进行验证:满足等式则说明签名有效且正确,其中 yi=bigi,ri=aigi,hi=xH(IDi),随机选择
[0071] 如上所述,在本发明中由于采用的双线性映射技术是一种数学手段,其签名短,验证签名只要满足数学等式 因此具有加快验证速度的效果。
[0072] 上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈