当前位置: 首页 > 专利查询>长沙学院专利>正文

一种细粒度查询授权的可搜索加密方法及系统技术方案

技术编号:21552336 阅读:40 留言:0更新日期:2019-07-07 00:20
本发明专利技术公开了一种细粒度查询授权的可搜索加密方法及系统,实施步骤包括数据提供者从原始数据中抽取索引关键字、对原始数据进行加密;生成两个密钥sk1和sk2;为索引关键字建立访问控制树、对索引关键字进行加密,将加密的数据文件和加密的索引关键字提交至服务器;查询用户使用数据提供者授权的私钥对查询关键字进行加密,并将密文发送至服务器;服务器根据加密的查询关键字在加密索引关键字中进行检索,并返回满足查询要求的加密数据给查询用户,查询用户在本地解密密文得到明文。本发明专利技术在加密的数据上同时实现细粒度的数据访问控制和密文搜索功能,查询用户的属性数量对加密查询关键字的时间开销基本没有影响,适合多线程并行处理,具有密文存储空间小、查询效率高等优点。

A Searchable Encryption Method and System for Fine-grained Query Authorization

【技术实现步骤摘要】
一种细粒度查询授权的可搜索加密方法及系统
本专利技术涉及信息检索和密码学领域,具体涉及一种细粒度查询授权的可搜索加密方法及系统,能够同时实现密文搜索和密文的细粒度访问控制,非常适合于云存储系统中的数据安全共享和信息检索应用场景。
技术介绍
随着云计算的快速发展和普及,越来越多的用户开始考虑将自己的私有数据迁移到云计算中心,一方面减少本地IT投入,另一方面借助于云计算平台的强大功能存储和处理数据。然而,数据安全一直是人们担忧的关键问题之一。因为数据一旦被外包至远程的云中心,它们将脱离数据所有者的直接物理控制。这样,数据面临着外部攻击者和云内部恶意管理员的双重威胁。数据提供者在外包数据之前,对数据进行加密是保护数据安全的有效途径之一。然而,传统的分组密码技术仅仅能保证数据的机密性,缺乏对密文进行高效搜索和访问控制的支持。可搜索加密(SearchableEncryption)是近年来学术界和工业界共同关注的密码学原语,它能够同时提供数据机密性保护和密文搜索功能。目前,可搜索加密技术在增强数据安全强度和丰富查询功能的研究上取得了一定的突破,提出了支持数据动态更新的前向安全、后向安全、组合安全本文档来自技高网...

【技术保护点】
1.一种细粒度查询授权的可搜索加密方法,其特征在于实施步骤包括:1)数据提供者从原始数据中抽取索引关键字集合W,并使用对称加密算法加数据;生成两个密钥sk1和sk2;对每一个索引关键字w∈W,根据其系统访问权限定义一棵访问控制树Tw,使用密钥sk2和访问控制树Tw对索引关键字w进行加密,得到索引关键字密文Iw。最后将加密数据和索引关键字密文提交至服务器;2)查询用户u向数据提供者发送申请加入系统的请求。数据提供者收到请求后对查询用户u进行身份认证,并利用u的属性信息和密钥sk1为其生成私钥Uu;3)查询用户u使用私钥Uu对查询关键字w0进行加密,得到相应的密文Tu(w0),并发送至服务器;4)...

【技术特征摘要】
1.一种细粒度查询授权的可搜索加密方法,其特征在于实施步骤包括:1)数据提供者从原始数据中抽取索引关键字集合W,并使用对称加密算法加数据;生成两个密钥sk1和sk2;对每一个索引关键字w∈W,根据其系统访问权限定义一棵访问控制树Tw,使用密钥sk2和访问控制树Tw对索引关键字w进行加密,得到索引关键字密文Iw。最后将加密数据和索引关键字密文提交至服务器;2)查询用户u向数据提供者发送申请加入系统的请求。数据提供者收到请求后对查询用户u进行身份认证,并利用u的属性信息和密钥sk1为其生成私钥Uu;3)查询用户u使用私钥Uu对查询关键字w0进行加密,得到相应的密文Tu(w0),并发送至服务器;4)服务器根据Tu(w0)在加密的索引关键字Iw中进行检索,并把满足查询要求的加密数据返回给查询用户u;5)查询用户u在对密文进行解密得到明文数据。2.根据权利要求1所述的细粒度查询授权的可搜索加密方法,其特征在于,步骤1)中生成两个密钥sk1和sk2的详细步骤包括:选择两个阶为q的乘法循环群G1和G2,定义双线性映射e将G1×G1映射到G2,用表示取值为1至q-1之间且与q互素的整数构成模q的乘法群。利用以上工具构造如式(1)所示的密钥sk1和sk2;式(1)中,密钥sk1包括β、1/β、gα三个元素,密钥sk2包括e(g,g)α和h两个元素,其中α,β分别从中随机均匀选择。1/β表示β在上的逆元,g为乘法循环群G1的生成元;e(g,g)α表示G1的生成元g的一次双线性映射运算后、将其值再进行α次幂运算,h等于乘法循环群G1的生成元g的β次幂运算。3.根据权利要求1所述的细粒度查询授权的可搜索加密方法,其特征在于,步骤1)中为索引关键字w建立访问控制树Tw的详细步骤包括:定义访问控制树Tw,所述访问控制树Tw中的非叶子节点表示一个阈值门,其阈值门包含与门AND、或门OR、取部分属性阈值门m_of_n(表示n个元素中任意取m个元素)三种类型,每个叶子节点表示一个属性;从访问控制树Tw的根节点开始,以自上而下的方式,为Tw中的每一个节点x构造一个多项式qx,并设置qx最高次项的次数为该节点的阈值少1,且非叶子节点中的与门AND节点的阈值为该节点孩子节点数量、或门OR节点的阈值为1、取部分属性阈值门m_of_n节点的阈值为m,叶子节点的阈值为1;对于访问控制树Tw的根节点R,数据拥有者从乘法群随机选择一个元素作为秘密值s,构造关于根节点R的一个多项式qR,设置该多项式的常数项为以上秘密值s,即qR(0)=s,然后根据根节点R的度dR选择dR个随机值,完整定义根节点R的多项式qR;对任何其它节点x,构造关于节点x的一个多项式qx,设置该多项式的常数项的值为qparent(x)(index(x)),qparent(x)(index(x))表示在关于节点x的父节点parent(x)的多项式中未知数取index(x)时的值,其中parent(x)表示节点x的父节点,index(x)表示节点x在其父节点parent(x)中的索引号;然后根据节点x的度dx选择其余的dx个随机值,完整定义节点x的多项式qx。4.根据权利要求1所述的细粒度查询授权的可搜索加密方法,其特征在于,步骤1)中使用密钥sk2和访问控制树Tw对索引关键字进行加密得到索引关键字密文Iw的函数表达式如式(2)所示;式(2)中,Iw表示使用密钥sk2和访问控制树加密索引关键字w的结果,Iw的密文组件包括Tw、I'w、I”w三个元素以及与访问控制树Tw的任一叶子节点y对应的Iy和I'y;I'w为用哈希函数H1对索引关键字w进行哈希运算、映射为乘法群上的一个元素H1(w),再用秘密值s和H1(w)做乘积运算得到sH1(w),然后用密钥sk2中的e(g,g)α进行sH1(w)次幂运算得到的结果;I”w为用密钥sk2中的h进行sH1(w)次幂运算得到的结果;y表示访问控制树Tw中叶子节点集合Y中的一个叶子节点,Iy为对叶子节点y用乘法群G1的生成元g进行qy(0)次幂运算得到的结果;I'y为用哈希函数H2对叶子节点y的属性信息attr(y)进行哈希运算映射到乘法群G1上的一个元素,再进行qy(0)次幂运算得到的结果。5.根据权利要求2所述的细粒度查询授权的可搜索加密方法,其特征在于,步骤2)中根据查询用户u的用户属性信息,数据提供者采用密钥sk1为u生成私钥Uu的函数表达式如式(3)所示;式(3)中,Uu表示用户u的密钥,...

【专利技术属性】
技术研发人员:尹辉熊荫乔李方敏
申请(专利权)人:长沙学院
类型:发明
国别省市:湖南,43

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

1