1.云计算中一种基于属性加密的关键词搜索算法,其主要特征是:能在加密状态下对数据进行关键词检索,并且不法用户不能通过关键词猜测进行攻击窃取数据拥有者的其他除关键词外的信息,算法包括以下几个步骤:
步骤一:搜索系统生成
步骤二:搜索服务器密钥生成
步骤三:搜索用户私钥生成
步骤四:关键词加密
步骤五:搜索凭证生成
步骤六:关键词搜索
步骤七:搜索结果加密
步骤八:搜索结果解密。
2.根据权利要求1所述的云计算中一种基于属性加密的关键词搜索算法,其特征是:该算法的具体执行步骤如下:
步骤一:设全局参数为GP,私钥为MK,公钥为PK,根据双线性对原理和散列函数,,分别是属性和关键词在G上映射,随机则有:
步骤二:搜索服务器随机选取 ,生成服务器私钥SSK=(x),秘密保存,然后生成搜索服务器公钥SPK:
步骤三:授权机构根据用户属性集合S和系统私钥MK,生成用户私钥USK:
其中:
步骤四:数据拥有者设定文件的关键词W,然后关键词密文设置搜索权限,并生成访问树T,选择公钥,生成关键词密文CT并上传;设x为T的节点, 为节点多项式,从根节点R开始,令的项数,随机令,定义函数parent(x)、index(x)表示父节点和x节点在父节点中的位置,令,则生成:
步骤五:用户根据需要的关键词,选择公钥,生成素偶所凭证TR,并将t作为秘密保存:
步骤六:搜索服务器根据用户生成的搜索凭证TR与关键词密文CT计算关键词是否相等,首先计算TR中的用户属性是否满足密文CT中定义的访问结构,设权限计算函数为DN(x)
其中x为叶子节点,i=att r(x)为节点x对应的属性,;
若X节点为非叶子节点,x的子节点z计算
其中为拉格朗日系数;
然后搜索服务器利用私钥SSK计算:
然后利用双线性算法计算:
其中,
步骤七: ,M是搜索服务器执行搜索任务后的元素,为防止恶意用户截获返回结果进行关键词猜测攻击,服务器随机选取生成密文:
步骤八:数据用户获得搜索服务器返回的加密的搜索信息,利用生成的随机秘密数t进行解密获得明文M:
。