技术领域
本发明属于信息安全领域,涉及一种基于格上属性基的云存储可搜索加密方法,可适用于云存储环境下数据的安全、共享存储以及高效检索。
背景技术
随着信息技术和物联网的飞速发展,信息产业正在逐步发展和成熟,同时带动了云计算的兴起。人们使用Internet的频率越来越高,许多用户不仅通过网络获取信息,而且获得各种服务,并且通过这些服务将生成大量数据,这些数据显示出与以往不同的特征。复杂的数据结构和快速扩展的数据规模不仅增加了用户的计算开销,而且使用户的存储问题非常严重。因此,将数据存储在云上越来越受欢迎。
为了确保数据的私密性,数据通常以密文形式存储,因此用户访问数据或与他人共享数据变得极为困难。针对这一问题,Sahai和Water等首先提出了基于属性的加密(ABE)概念。它是一种灵活的“一对多”公钥加密方法,即一次加密,可由多人解密共享数据。加密数据时,数据所有者不需要事先知道数据访问者的身份,而只需将关联的访问结构或属性集嵌入密文中即可。这样,只有满足相关解密条件的用户才可以解密密文,但是不满足解密条件的用户则不能。基于属性的加密由于其灵活性,效率和安全性,被许多学者认为是在云存储环境中进行细粒度访问控制的最合适方法之一。
由于数据以加密方式存储于服务器中,因此尽管密文隐藏了数据的真实内容,但它也阻止了数据文件的有效检索,这给数据检索和查询带来了巨大挑战。如果用户想查看密文文件集合中的某个文件,则需要下载并解密整个上传的文件集合,然后搜索或查询数据,这将给用户带来巨大的计算成本和开销。因此,Song等人首次提出了可搜索加密(SE)的概念。该技术可以使用户直接搜索密文。当用户需要搜索包含某个关键词的密文时,只需要生成与该关键词对应的搜索令牌,并将该令牌上传至云服务器即可。接收到令牌后,云服务器会将密文中的关键字与令牌中的关键字进行匹配。如果匹配成功,则将包含关键字的密文返回给用户,用户只需要对密文进行解密即可。
鉴于各自的优势,学者们开始整合ABE方案和SE方案并提出一种新的方案叫属性基可搜索加密(ABSE),它既可以实现对数据访问者的搜索权限的细粒度访问控制,又可以实现在密文条件下的关键字搜索。但是现有的大多数方案都是通过双线性Diffie-Hellman(BDH)假设来构造的,随着量子计算机的发展,这些方案将不再安全。由于格密码学具有抗量子攻击的特性,基于格的各种加密方案近年来已成为研究热点,Regev等人首次提出了基于错误学习(LWE)的格上困难问题,并给出了从最坏情况到一般情况下格困难问题的规约,为之后基于LWE问题来构建公钥加密方案奠定了基础。然而,目前还很少有人研究格上的公钥加密下可搜索加密方案。因此,本发明提出的基于格上属性基的云存储可搜索加密方法具有重要实际意义。另外,大多数基于格的ABSE方案很少关注解密效率。因此,本文采用“Gtrapdoor”生成算法来提高该方案的整体效率。
发明内容
有鉴于此,本发明的目的在于提供一种基于格上属性基的云存储可搜索加密方法,以用于云存储环境下,数据可以被更安全与高效的存储与检索。
本发明的目的是通过以下技术方案来实现的:
本发明提供一种基于格上属性基的云存储可搜索加密方法,该方法包括以下步骤:
步骤1)由授权机构(AA)运行初始化算法生成系统的公钥参数Pk和主密钥Msk;
步骤2)数据拥有者(DO)使用Pk去加密含有关键词的明文数据分别生成关键词密文Ind和数据密文Ct,并赋予其属性集S一同上传至云端(CS);
步骤3)AA根据访问策略为数据访问者(DU)生成一个私钥Sk(用于解密密文),DU向AA提交一个查询关键词然后生由AA生成一个搜索令牌Token返回给DU、DU向CS发起一个搜索请求并将Token上传至云端,CS判断其是否与关键词密文Ind相匹配,如匹配,则进行下一步;反之,则结束算法;
步骤4)CS返回该关键词密文对应的数据密文Ct给DU、DU通过上一步生成的私钥Sk解密密文得到匹配数据原文信息(数据属性满足私钥的访问控制策略才可以正确解密数据)。
进一步的,所述步骤1),需要调用陷门生成函数来初始化的系统以生成所需要的公私钥对:
式中,n和m表示所需要生成的二维矩阵维度,q是一个质数代表所有矩阵元素的数值范围,σ代表需要生成这个陷门所需要满足的最小误差值,
进一步的,所述步骤2),分别需要构造一个用于加密消息数据和索引数据的加密矩阵从而生成的消息密文和索引密文:
式中,A
进一步的,所述步骤3),需要调用左采样算法来根据已有的初始公私钥对来生成矩阵拓展后的私钥(即陷门矩阵):
式中,A
进一步的,所述步骤4),首先要执行搜索算法去判断查询的关键词是否有匹配的相应消息密文数据,即计算:
式中,I
最后,需要执行解密算法去对密文数据进行解密:
式中,C
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究,对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的技术方案更加清楚,下面将结合附图对本发明作详细描述,其中:
图1为本发明流程图,图2为本发明系统模型图。
具体实施方式
为使本发明的技术方案、优点和目的更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本申请的保护范围。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图对本发明作进一步说明。
如图1所示,一种基于格上属性基的云存储可搜索加密方法,该方法包括以下步骤:
步骤1)由授权机构(AA)运行初始化算法生成系统的公钥参数Pk和主密钥Msk,具体包括以下几个子步骤:
步骤1.1:分别从
步骤1.2:对于每一个属性att
步骤1.3:分别从Z
步骤1.4:选取一个哈希函数H用于将{0,1}
步骤2)数据拥有者(DO)使用公钥参数Pk去加密含有关键词的明文数据分别生成关键词密文I和数据密文Ct,并赋予其属性集S一同上传至云端(CS),具体包括以下几个子步骤:
步骤2.1:从
步骤2.2:从
步骤2.3:记
步骤3)AA根据访问策略为数据访问者(DU)生成一个私钥Sk(用于解密密文),DU向AA提交一个查询关键词然后生由AA生成一个搜索令牌Token返回给DU、DU向CS发起一个搜索请求并将Token上传至云端,CS判断其是否与关键词密文Ind相匹配,如匹配,则进行下一步;反之,则结束算法,具体包括以下几个子步骤:
步骤3.1:从Z
步骤3.2:DU向AA提交查询关键词kw
步骤4)CS返回该关键词密文对应的数据密文Ct给DU、DU通过上一步生成的私钥Sk解密密文得到匹配数据原文信息(数据属性满足私钥的访问控制策略才可以正确解密数据),具体包括以下几个子步骤:
步骤4.1:如果密文所带属性集S满足DU采取的访问控制策略(M,ρ)也就意味着一定存在一个整数向量{g
步骤4.2:对于每一位消息比特m
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
机译: 基于格的云存储数据安全审计方法,通过代理支持数据上传
机译: 基于本体的用于管理服务属性的模块和方法,以及使用该服务来可视化服务的系统和方法,能够在定义服务属性并将服务属性映射到可视化组件上的同时建模单元服务本体
机译: 重编程源细胞和软骨细胞,产生细胞,防止软骨细胞培养物分化,治疗骨关节炎或以软骨组织变性为特征的另一种疾病的方法,以及鉴定可促进软骨细胞转化的有用方法软骨细胞类型,细胞,细胞群,一种或多种化合物的用途和细胞群,一种或多种酸[4-[(5,6,7,8-四氢-5,5,8 ,(8-四甲基-2-萘基)羧酰胺基](am580),全反式视黄酸,9-顺式视黄酸,β-雌二醇,骨化三醇,西格列酮,软骨素,氯化锂,褪黑激素,盐酸罗欣,盐酸亚叶酸,伏立诺他和佛司可林,药物组合物,用于重编程源细胞,产生细胞并防止软骨细胞培养物分化的方法和方法的试剂盒和方法