一种自有后量子密钥分配方法组成比例

技术编号:18240398 阅读:40 留言:0更新日期:2018-06-17 05:05
本发明专利技术提供了一种自有后量子密钥分配方法,所述方法包括:生成密钥:采用哈希树的方式生成密钥,所述哈希树是通过计算公钥Yj的初始哈希值H(Yi),然后再继续向上计算上一个节点的哈希值H(Yi‑1),直到只剩下最后一个节点的哈希值H(Y1);生成签名:签名者挑选一个密钥对(Xi,Yi),用一次性签名方案对所述密钥对(Xi,Yi)进行Merkle签名,再把增加额外的信息发送给Merkle,证明Merkle确实是被签名过的所述密钥;签名验证:接收者收到Merkle签名过的数密钥对(Xi,Yi)后,用公钥Yi来验证所述密钥对(Xi,Yi)是否被一次性验证方案签名过。本发明专利技术在保障数据的安全性的同时还可减少计算,从而提高效率。 1

A self owned post quantum key distribution method

The present invention provides a method of self - owned post quantum key distribution, which includes: generating key: generating a key in a hash tree, the hash tree is by calculating the initial hash value H (Yi) of the public key Yj, and then continues to calculate the hash value H (Yi 1) of the last node to the last node until only the last node is left. The hash value H (Y1); generates a signature: the signer selects a key pair (Xi, Yi), uses a one-time signature scheme to sign the Merkle of the key pair (Xi, Yi), and then sends additional information to Merkle to prove that Merkle is indeed the signed key; signature verification: the receiver receives the number of Secrets signed by Merkle. After the key pair (Xi, Yi), the public key Yi is used to verify whether the key pair (Xi, Yi) has been signed by the one-time verification scheme. The invention can reduce the computation and improve the efficiency while guaranteeing the safety of data. One

【技术实现步骤摘要】
一种自有后量子密钥分配方法
本专利技术涉及量子通信
,尤其涉及一种自有后量子密钥分配方法。
技术介绍
随着云计算和大数据的快速发展,资源受限的客户端可以将庞大的数据外包给云端服务器,从而减少客户端维护本地数据的开销。然而,云计算在给用户带来便利性的同时,由于用户并不真正存储数据,从而难以保证数据的完整性和可用性。首先,云存储服务器会不可避免的受到外界和内部的攻击,而使数据存在丢失与篡改等安全问题。其次,云服务提供商可能会为了获取更大利益,而刻意删除、更改用户数据。这些问题都会使数据的完整性和可用性难以保证,同时在传统的支持动态操作的云存储系统中,对于云中动态文件的动态操作所产生的计算和通信开销是完全由用户承担的,这给用户带来了相应的计算和通信压力。
技术实现思路
本专利技术针对现有方式的缺点,提出一种自有后量子密钥分配方法,用以解决现有技术存在的上述问题。根据本专利技术的一个方面,提供了一种自有后量子密钥分配方法,所述方法至少包括如下步骤:S101、生成多个密钥:发送端采用哈希树的方式生成多个密钥,当有多个公钥,则所述哈希树首先计算公钥Yi获取初始节点的初始哈希值,然后再继续向上计算初始节点的第i-1个节点的哈希值,第i-1个节点的数值对即为密钥Xi,再继续向上计算第j个节点的哈希值Yj,第j-1个节点的数值对即为密钥Xj,直到只剩下最后一个节点的哈希值;若第j个节点的公钥为Yj,则设定所述密钥Xj和公钥Yj为密钥对(Xj,Yj);S102、生成签名:签名者随机挑选一个密钥对(Xj,Yj),用一次性签名方案对所述密钥对(Xj,Yj)进行Merkle签名,然后把增加额外的信息发送给Merkle以证明所述密钥对已被签名,密钥对(Xj,Yj)被Merkle签名后称为签名密钥对;S103、签名验证:接收者收到签名密钥对后,用公钥Yj验证所述签名密钥对是否已进行Merkle签名;所述公钥存储在发送端和接收端。进一步的,所述公钥Yj为哈希树上第j个节点的哈希值,所述哈希树为根据密文深度构造深度为d的二叉树,n=2d;每个叶子节点对应一个数据密文Ci,且每个非叶子节点的哈希值连接它的两个直接子节点的哈希值。进一步的,所述用公钥Yj验证所述签名密钥对是否已进行Merkle签名,还包括,如果用公钥Yj验证所述签名密钥对已进行Merkle签名,则接收者计算A0=H(Yi),A1=H(A0|auth0),A2=H(A1|auth1)…Aj=H(Aj-1|authj-1)…Ai=H(Ai-1|authi-1)…如果所有的Ai都与公钥一致,则签名是有效的;所述A0为哈希树上初始节点的初始哈希值,A1为哈希树上初始节点上的第二个节点的哈希值,Aj为初始节点上第j+1个节点的哈希值,Ai为初始节点上第i+1个节点的哈希值;所述auth为规则认证,所述authi-1为通过auth对节点i进行规则认证,所述Ai-1|authi-1为规则认证定义表达式,Aj=H(Aj-1|authj-1)为第j-1个节点的哈希值的计算规则。进一步的,所述Merkle至少包括Merkle可验证数据库,所述Merkle可验证数据库用于验证所述签名密钥对是否已被签名。进一步的,所述Merkle至少包括Merkle云端数据库,所述Merkle云端数据库用于对所述密钥对进行Merkle签名。与现有技术相比,本专利技术的有益效果是:本专利技术在保障数据的安全性的同时还可减少计算,从而提高效率。本专利技术附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本专利技术实施例中的一种自有后量子密钥分配方法流程图;图2为本专利技术实施例中的哈希树各节点的示意图;图3为本专利技术实施例中的哈希值被验证的示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。在本专利技术的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分例,实施而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本
技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本专利技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。实施例如图1所示,提供了本专利技术一个实施例的一种自有后量子密钥分配方法,该方法包括步骤S101-S103:S101、生成多个密钥:发送端采用哈希树的方式生成多个密钥,当有多个公钥,则哈希树首先计算公钥Yi获取初始节点的初始哈希值,然后再继续向上计算初始节点的第i-1个节点的哈希值,第i-1个节点的数值对即为密钥Xi,再继续向上计算第j个节点的哈希值Yj,第j-1个节点的数值对即为密钥Xj,直到只剩下最后一个节点的哈希值;若第j个节点的公钥为Yj,则设定密钥Xj和公钥Yj为密钥对(Xj,Yj);公钥是指公开的密钥,其存储在发送端和接收端。哈希树(HashTree)是一种比较理想的数据存储结构。哈希树具体构建如下所述:选择质数分辨算法来建立一棵哈希树。例如:选择从2开始的连续质数来建立一个十层的哈希树。第一层结点为根结点,根结点下有2个结点;第二层的每个结点下有3个结点;依此类推,即每层结点的子节点数目为连续的质数。到第十层,每个结点下有29个结点。同一结点中的子结点,从左到右代表不同的余数结果。例如:第二层结点下有三个子节点。那么从左到右分别代表:除3余0,除3余1,除3余2.对质数进行取余操作得到的余数决定了处理的路径。结点结构:结点的关键字(在整个树中是唯一的),结点的数据对象,结点是否被占据的标志位(标志位为真时,关键字才被认为是有效的),和结点的子结点数组。哈希树的节点结构如下:如果在建立当初就建立所有的节点,那么所消耗的计算时间和磁盘空间是巨大的。在实际使用当中,只需要初始化根节点就可以开始工作。子节点的建立是在有更多的数据进入到哈希树中的时候建立的。因此可以说哈希树和其他树一样是一个动态结构。哈希树的节点查找过程和节点插入过程类似,就是对关键字用质数序列取余,根据余数确定下一节点的分叉路径,直到找到目标节点。如上图,最小”哈希树(HashTree)在从4G个对象中找出本文档来自技高网
...
一种自有后量子密钥分配方法

【技术保护点】
1.一种自有后量子密钥分配方法,其特征在于,包括如下步骤:

【技术特征摘要】
1.一种自有后量子密钥分配方法,其特征在于,包括如下步骤:S101、生成多个密钥:发送端采用哈希树的方式生成多个密钥,当有多个公钥,则所述哈希树首先计算公钥Yi获取初始节点的初始哈希值,然后再继续向上计算初始节点的第i-1个节点的哈希值,第i-1个节点的数值对即为密钥Xi,再继续向上计算第j个节点的哈希值Yj,第j-1个节点的数值对即为密钥Xj,直到只剩下最后一个节点的哈希值;若第j个节点的公钥为Yj,则设定所述密钥Xj和公钥Yj为密钥对(Xj,Yj);S102、生成签名:签名者随机挑选一个密钥对(Xj,Yj),用一次性签名方案对所述密钥对(Xj,Yj)进行Merkle签名,然后把增加额外的信息发送给Merkle以证明所述密钥对已被签名,密钥对(Xj,Yj)被Merkle签名后称为签名密钥对;S103、签名验证:接收者收到签名密钥对后,用公钥Yj验证所述签名密钥对是否已进行Merkle签名;所述公钥存储在发送端和接收端。2.如权利要求1所述的方法,其特征在于,所述公钥Yj为哈希树上第j个节点的哈希值,所述哈希树为根据密文深度构造深度为d的二叉树,n=2d;每个叶子节点对应一个数据密文Ci,且每个非叶子节点的哈希值连接它的两个直接子节点的...

【专利技术属性】
技术研发人员:陈柱
申请(专利权)人:众算上海数据科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1