精华内容
下载资源
问答
  • 属性基加密
    2022-05-27 09:44:02

    目录

     

    引言

    模糊身份基加密

    相关补充


     

    引言

            在身份基加密被提出以后,又出现了模糊身份基加密(FIBE),也可以说是属性基加密雏形。在FIBE中,将身份看作是一组描述性属性。它允许具有身份gif.latex?%5Comega的用户去解密用身份gif.latex?%7B%5Comega%20%7D%27加密的密文,当gif.latex?%5Cleft%20%7C%20%5Comega%20%5Cbigcap%20%7B%5Comega%20%7D%27%20%5Cright%20%7C%5Cgeq%20d,在一定的度量下,他们的身份重叠大于等于门限值d,也就是他们之间的属性重合大于等于门限值时,所以FIBE具有一定的容错特性,可以使用生物识别特征作为属性输入。

            同时,它还具有抗共谋的特性,对于不同用户组合他们的属性,从而解密他们各自不能解密的密文,这在FIBE中是不允许的,主要是使用生成随机多项式来实现抗共谋攻击。FIBE的提出产生了两个新的新应用,第一个就是可以使用生物识别身份的身份基加密系统。例如{身高,体重,血型}等生物特征作为身份。第二个就是属性基加密系统。例如{本科生,研究生,教师}等属性作为身份。

            FIBE就是最基本的属性基加密系统,将系统中的属性映射到gif.latex?Zp%5E%7B*%7D中,密文和用户的密钥都与属性相关。该机制仅支持基于属性的门限策略,即当用户属性集合与密文属性集合相交的属性数量达到系统规定的门限值以上才允许该用户对密文进行解密。例如,图书馆中某论文的属性集合为{计算机,安全,研究生,英文},且该论文属性加密门限值为3,则属性基为{计算机,安全,研究生}可以访问该论文,而属性集合为{计算机,安全,本科生}的用户就无法访问它。

    模糊身份基加密

            设G1为素数阶p的双线性群,设g是G1的生成元。e:gif.latex?G1%5Ctimes%20G1%5Crightarrow%20G2表示双线性映射。安全参数k将确定群的大小。同时为gif.latex?i%5Cin%20Zpgif.latex?Zp中元素的集合gif.latex?s定义拉格朗日系数gif.latex?%5CDelta%20_%7Bi%2Cs%7D:

                                                           gif.latex?%5CDelta%20_%7Bi%2Cs%7D%28x%29%3D%5Cprod_%7Bj%5Cin%20s%2Cj%5Cneq%20i%7D%5E%7B%7D%5Cfrac%7Bx-j%7D%7Bi-j%7D.

            身份将是属性域U的子集,大小为|U|。我们将属性域中每个元素与gif.latex?Zp%5E%7B*%7D中唯一整数相关联,d是系统门限值。

    setup(d)

    首先,定义一个元素域|U|,为简单起见,我们可以采取gif.latex?Zp%5E%7B*%7D为第一个域|U|,即整数1,……|U|(mod p)。

    接下来,在Zp中随机选取gif.latex?t_%7B1%7D%2C...%2Ct_%7B%7CU%7C%7D,最后,在Zp中随机选取y。

    公共参数为:gif.latex?T_%7B1%7D%3Dg%5E%7Bt_%7B1%7D%7D%2C...%2CT_%7B%7Cu%7C%7D%3Dg%5E%7Bt_%7B%7Cu%7C%7D%7D%2CY%3De%28g%2Cg%29%5E%7By%7D

    主密钥为:gif.latex?t_%7B1%7D%2C...t_%7B%7Cu%7C%7D%2Cy

    Key Generation

    为身份gif.latex?%5Comega%20%5Csubseteq%20U的用户生成私钥。首先选取一个随机的d-1阶多项式,令q(0)=y,私钥由gif.latex?%28D_%7Bi%7D%29_%7Bi%5Cin%20%5Comega%20%7D组成,其中gif.latex?D_%7Bi%7D%3Dg%5E%7B%5Cfrac%7Bq%28i%29%7D%7Bt_%7Bi%7D%7D%7D,对于每个gif.latex?i%5Cin%20%5Comega

    Encryption

    使用公钥gif.latex?%7B%5Comega%20%5E%7B%7D%7D%27加密消息gif.latex?M%5Cin%20G2。首先选取一个随机值gif.latex?s%5Cin%20Zp。密文公布为:

    gif.latex?E%3D%28%5Comega%20%7B%7D%27%2CE%7B%7D%27%3DMY%5E%7Bs%7D%2C%7BE_%7Bi%7D%3DT_%7Bi%7D%5E%7Bs%7D%7D_%7Bi%5Cin%20%5Comega%20%7B%7D%27%7D%29。注意身份gif.latex?%5Comega%20%7B%7D%27也被包含在密文中。

    Decryption

    假设密文E被用身份gif.latex?%5Comega%20%7B%7D%27的密钥加密,我们有身份gif.latex?%5Comega的私钥,当gif.latex?%7C%5Comega%20%5Cbigcap%20%5Comega%20%7B%7D%27%7C%5Cgeq%20d,选择一个gif.latex?%5Comega%20%5Cbigcap%20%5Comega%20%7B%7D%27的任意d元素子集S。

    密文就可以被解密为:%5Cprod_%7Bi%5Cin%20S%7D%5E%7B%7D%28e%28D_%7Bi%7D%2CE_%7Bi%7D%29%29%5E%7B%5CDelta%20_%7Bi%2Cs%7D%280%29%7D

                                      =%5Cprod_%7Bi%5Cin%20S%7D%5E%7B%7D%28e%28g%5E%7B%5Cfrac%7Bq%28i%29%7D%7Bt_%7Bi%7D%7D%7D%2Cg%5E%7Bst_%7Bi%7D%7D%29%29%5E%7B%5CDelta%20_%7Bi%2Cs%7D%280%29%7D

                                      =%5Cprod_%7Bi%5Cin%20S%7D%5E%7B%7D%28e%28g%2Cg%29%5E%7Bsq%28i%29%7D%29%5E%7B%5CDelta%20_%7Bi%2Cs%7D%280%29%7D

                                      =gif.latex?M

    最后一个等式是在指数上进行多项式插值得到的,因为d-1次多项式q(x)可以用d个点进行插值。

    相关补充

            在生成私钥部分,是将主密钥y嵌入到密钥组件中,利用的是Shamir秘密共享机制实现的,生成一个d-1次多项式,将秘密y作为随机多项式的常数项,当密文中属性与密钥中属性重合大于等于门限值d时,就可以利用拉格朗日插值,选取重合的d个属性,经过密文组件与密钥组件的计算将多项式确定下来,从而得到常数项中主密钥y的值,因为在生成密钥组件时用的是随机多项式,所以不同用户相同属性的密钥组件也不相同,从而保证了抗共谋性。随机数s可以防止多次加密情况下用户首次解密成功即可解密后续密文的问题。该机制中,PK与系统属性数目线性相关,幂运算和双线性对数目较多,系统越大,计算复杂。

    参考文献

    Sahai A, Waters B. Fuzzy identity-based encryption[C]

     

    更多相关内容
  • 针对攻击者可能使用的用户属性进行分析攻击以及第三方服务器潜在的不可信问题,提出一种基于属性基加密(CP-ABE,ciphertext policy attribute based encryption)的方法,通过用户协作完成对用户属性的匿名操作,...
  • 传统的属性基加密方案中存在着访问策略所包含的属性会泄露用户的敏感信息以及恶意用户泄露私钥获取非法利益而不会被追责的问题。同时私钥长度、密文长度和解密运算量均会随属性数量增加而带来较大的通信开销和计算...
  • 在综合分析现有密文策略属性基加密方案的基础上,针对现有密文策略属性基加密方案较少考虑属性重要性的现状,将权重的概念引入到密文策略属性基加密方案中。授权机构依据属性在系统中的重要程度为其分配不同的权值,...
  • 在对密钥策略属性基加密、密文策略属性基加密和混合策略属性基加密深入研究后,根据不同的功能扩展,针对隐藏访问结构、多授权机构、复杂计算安全外包、可搜索加密机制、属性撤销、叛徒追踪等重点难点问题进行了深入...
  • 自从Sahai和Waters提出了基于属性加密的概念,密文策略的属性基加密(ciphertext-policy attribute-based encryption,CP-ABE)体制因其使用场景的广泛性受到了各界的青睐.对于使用移动设备进行属性基加解密的用户而言,...
  • 密文策略的属性基加密方案是更接近实现访问控制系统的加密方案,基于c语言实现,亲测在linux上可用。
  • 针对单授权中心方案通信和计算开销较大的问题,提出一种基于密文策略属性基加密(ciphertext-policy attribute-based encryption,CP-ABE)的多授权中心访问控制方案。该方案引入属性管理器对用户属性进行分组,多个...
  • #资源达人分享计划#
  • #资源达人分享计划#
  • 一种支持撤销的双策略属性基加密方案
  • 可追责并解决密钥托管问题的属性基加密方案
  • 云计算多授权机构的属性基加密方案.pdf
  • 属性基加密因其细粒度访问控制在云存储中得到了广泛应用。在属性基加密方案中,每个属性可能同时被多个用户共享,因此如何实现属性级用户撤销且能够抵抗用户合谋攻击是当前面临的重要挑战。针对上述问题,提出了一种...
  • 属性基加密(ABE,attribute-based encryption)用于提供细粒度访问控制及一对多加密,现已被广泛应用于分布式环境下数据共享方案以提供隐私保护。然而,现有的属性基加密数据共享方案均允许数据拥有者任意修改数据,...
  • 理想格上的加密方案具有密钥尺寸小、加密效率高的优势,利用理想格环上带误差学习(R-LWE,ring learning with error)问题,构造一种可以保护用户属性隐私的属性基加密方案,支持灵活的访问策略,提供用户隐私保护,...
  • 属性基加密方案被认为是云存储环境下数据资源访问控制的最佳选择,但是策略更新很大程度上限制了其在实际中的应用。针对此问题,提出一种支持策略动态更新的多机构属性基加密方案。该方案引入匿名密钥分发协议为用户...
  • 针对基于密钥策略属性基加密(KP-ABE,key-policy attribute-based encryption)方案不能兼顾属性撤销和用户身份追踪的问题,提出一种支持可撤销和可追踪的KP-ABE方案。首先,该方案能够在不更新系统公钥和用户私钥的...
  • 密钥策略属性基加密(KP-ABE)的出现弥补了这一缺陷,在KP-ABE系统中,密文与一组描述性属性相关联,用户的私钥与一个访问结构相关联,当密文中的属性集满足用户私钥中的访问策略时,密文才能够被解密

    目录

    KP-ABE的基本知识

    KP-ABE过程

    KP-ABE的说明

    参考文献


    KP-ABE的基本知识

    基本的属性基加密将密文和密钥都与一组属性关联起来,当密文与密钥之间至少有d个属性重合时,用户就可以解密密文。虽然这个策略对于生物识别的容错加密有一定的作用,但访问控制缺乏灵活性限制了它的应用。密钥策略属性基加密(KP-ABE)的出现弥补了这一缺陷,在KP-ABE系统中,密文与一组描述性属性相关联,用户的私钥与一个访问结构相关联,当密文中的属性集满足用户私钥中的访问策略时,密文才能够被解密。这使得属性基加密能够细粒度共享加密数据,KP-ABE的构造适用于审计日志信息和广播加密。

            在KP-ABE中,与用户私钥相关联的访问结构被构造为访问树。其中树的内部节点都是一个阈值门,由其子节点和阈值描述。如果num_{x}是其子节点的个数,k_{x}是其阈值,则0<k_{x}\leq num_{x}。与门和或门都可以被构造成阈值门,当k_{x}=1时,就是或门,当k_{x}=num_{x}时就是与门。叶子节点与属性相关联,由属性值和阈值k_{x}=1描述。为了便于使用访问数,还定义了一些函数。parent(x)表示树中节点的父节点。att(x)表示与树中叶节点相关联的属性,只有x节点是叶节点时才定义该函数。对于节点的子节点来说,需要对子节点进行编号,index(x)返回子节点的索引值。

            用T_{x}表示以节点x为根的树,则根为r的访问树表示为T_{r},当节点被满足时令T_{x}=1,我们递归计算所有节点,当根节点满足时,我们就可以进行解密操作。否则解密失败。

    KP-ABE过程

    G1是素数阶p的双线性群,g是G1的生成元。此外e:gif.latex?G1%5Ctimes%20G1%5Crightarrow%20G2表示双线性映射。安全参数k将确定群的大小。同时为gif.latex?i%5Cin%20Zpgif.latex?Zp中元素的集合gif.latex?s定义拉格朗日系数gif.latex?%5CDelta%20_%7Bi%2Cs%7D:

                                                           gif.latex?%5CDelta%20_%7Bi%2Cs%7D%28x%29%3D%5Cprod_%7Bj%5Cin%20s%2Cj%5Cneq%20i%7D%5E%7B%7D%5Cfrac%7Bx-j%7D%7Bi-j%7D.

    我们将每个属性与Z_{p}^{*}中的一个唯一的元素关联起来,构造如下:

    Setup:定义一个属性域U={1,2,……,n}。对于每个属性i\in U,在Zp中随机选取t_{i},最后,从Zp中随机选取y。

    公布公共参数PK为:gif.latex?T_%7B1%7D%3Dg%5E%7Bt_%7B1%7D%7D%2C...%2CT_%7B%7Cu%7C%7D%3Dg%5E%7Bt_%7B%7Cu%7C%7D%7D%2CY%3De%28g%2Cg%29%5E%7By%7D

    主密钥MK为:gif.latex?t_%7B1%7D%2C...t_%7B%7Cu%7C%7D%2Cy

    Encryption(M,\gamma,PK):在一组属性集合\gamma下加密消息M\inG2,选择一个随机值s\inZ_{p},公布密文如下:

                                      E=(\gamma ,E{}'=MY^{s},\left \{ E_{i} =T_{i}^{s}\right \}_{i\in \gamma })

    Key Generation(\tau,MK):这个算法输出一个密钥能够使用户与解密在一组属性\gamma下加密的信息,当且仅当\tau (\gamma )=1。算法过程如下:首先为树中的每个节点x选择一个多项式q_{x}(包括叶子节点),这些多项式从根节点r开始以一种自顶向下的方式选择。

            对于树中的每个节点x,设置多项式q_{x}的次数比节点阈值少一,也就是d_{x}=k_{x}-1。首先,对于根节点r,设置q_{r}(0)=y,然后d_{r}次多项式q_{r}的其他点完全随机的选取。对于任意的其他节点x,设置q_{x}(0)=q_{parent(x)}(index(x)),其他点随机选择来定义q_{x}。多项式被定义好之后,对于叶子节点x,我们将以下的秘密值给用户:

                                                           D_{x}=g^{\frac{q_{x}(0)}{t_{i}}},当i=att(x)时。

    以上一组秘密值就是解密密钥D。

    Decryption(E,D):解密过程为递归过程。首先定义一个递归算法DecryptNode(E,D,x),将密文E=(\gamma ,E{}',\left \{ E_{i} \right \}_{i\in \gamma }),私钥D,树中的一个节点x作为输入,输出一个G2中的元素或者\perp

            令i=att(x)。当节点是叶子节点时DecryptNode(E,D,x)=\left\{\begin{matrix} e(D_{x},E_{i}) =e(g^{\frac{q_{x}(0)}{t_{i}}},g^{s\cdot t_{i}})=e(g,g)^{s\cdot q_{x}(0)},if i\in \gamma & & \\ &\perp otherwise & \end{matrix}\right.

           当x不是一个叶子节点时,算法DecryptNode(E,D,x)过程如下:对于x的所有子节点z,调用DecryptNode(E,D,z)并保存输出为F_{z},令S_{x}为任意k_{x}大小的子节点z的集合,使得F_{z}\neq \perp,如果这样的集合不存在,则节点不满足,函数返回\perp。否则,计算如下:

                                          F_{x}=\prod_{z\in S_{x}}^{}F_{z}^{\Delta _{i},s{}'_{x}(0)}, i=index(z),s{}'_{x}=\left \{ index(z):z\in S_{x} \right \}

                                               =\prod_{z\in S_{x}}^{}(e(g,g)^{s\cdot q_{z}(0)})^{\Delta _{i,s{_{x}}'}(0)}

                                               =\prod_{z\in S_{x}}^{}(e(g,g)^{s\cdot q_{parent(z)}(index(z))})^{\Delta _{i,s{}'_{x}}(0)}

                                               =\prod_{z\in S_{x}}^{}e(g,g)^{s\cdot q_{x}(i)\cdot \Delta _{i,s{}'_{x}}(0)}

                                               =e(g,g)^{s\cdot q_{x}(0)}

    最后返回结果。我们发现当访问树被满足时DecryptNode(E,D,r)=e(g,g)^{ys}=Y^{s}。因为E{}'=MY^{s},所以E{}'/Y^{s}就是我们解密出来的明文M。

    KP-ABE的说明

            KP-ABE的Setup和Encryption过程和基本ABE一致,主要区别在于密钥生成和解密阶段,将基本ABE中的门限值替换成了细粒度的访问树控制结构,只有当密文中的属性满足密钥中嵌入的访问树时,用户才能解密该密文。根据密文中的属性和访问树的叶子节点开始匹配,层层递进直到根节点,若满足则可以恢复出根节点的秘密值y,从而计算出Y^{s}的值,最终解出明文M。

    参考文献

    GOYAL V, PANDEY O, SAHAI A, et al. Attribute-based encryption for fine-grained access control of encrypted data

    展开全文
  • 属性基加密方案中,加密者通常把访问策略与密文一起发送给用户,但有时访问策略本身就是敏感信息,需要保密。提出一种新的较高效的匿名访问属性基加密方案,在加密过程中通过隐藏部分子集值以使授权用户有效密文和...
  • 针对可追踪属性基加密方案利用追踪功能解决密钥委托滥用问题的不完备性,提出了一种抗密钥委托滥用的可追踪属性基加密方案。将秘密参数分享给用户私钥中关联属性的全部组件,使解密过程必须由全部组件共同参与完成,...
  • 针对数据外包环境中属性的细粒度撤销,借助于数据外包管理服务器和密钥加密密钥,提出一种间接模式下支持即时撤销的属性基加密方案。首先给出外包环境中支持撤销的属性基加密定义和安全模型,其次给出具体的支持撤销...
  • 提出一种支持直接撤销的属性基加密方案,首先给出支持直接撤销的属性基加密定义和安全模型,其次给出具体的支持撤销的密文策略——属性基加密方案并对安全性进行证明,最后,与其他方案对比显示,该方案在密文和密钥...
  • 与现有的撤销方案对比,所提方案只需半可信第三方更新 RSA 属性认证密钥,不需要用户更新密钥且不需要重加密密文,极大地减少了撤销带来的计算量和通信量,同时保证了抗串谋攻击和前后向安全性。安全性分析和实验...
  • 在密文策略属性基加密(CP-ABE)中正好与之相反,私钥与属性相关联,密文与访问结构相关联,能够决定拥有哪些属性的用户可以解密密文,这样设置,加密者就能够控制谁有权访问他加密的数据。这与传统的访问控制方法,...

       

    目录

       

    密文策略属性基加密(CP-ABE)

    CP-ABE过程

     参考文献

    密文策略属性基加密(CP-ABE)

        在之前的(KP-ABE)中,密文和属性相关联,私钥与访问策略相关联,可以决定能解密的密文,加密者无法控制谁能够访问他加密的数据。在密文策略属性基加密(CP-ABE)中正好与之相反,私钥与属性相关联,密文与访问结构相关联,能够决定拥有哪些属性的用户可以解密密文,这样设置,加密者就能够控制谁有权访问他加密的数据。这与传统的访问控制方法,基于角色的访问控制(RBAC)类似。在CP-ABE中,使用了一种新颖的私钥随机化技术来保证抗共谋性。使用新的两级随机掩蔽的技术。

            在CP-ABE中,与密文相关联的访问结构也被构造为访问树。其中树的内部节点都是一个阈值门,由其子节点和阈值描述。如果num_{x}是其子节点的个数,k_{x}是其阈值,则0< k_{x}\leq num_{x}。与门和或门都可以被构造成阈值门,当k_{x}=1时,就是或门,当k_{x}=num_{x}时就是与门。叶子节点与属性相关联,由属性值和阈值k_{x}=1描述。为了便于使用访问数,还定义了一些函数。parent(x)表示树中节点的父节点。att(x)表示与树中叶节点相关联的属性,只有x节点是叶节点时才定义该函数。对于节点的子节点来说,需要对子节点进行编号,index(x)返回子节点的索引值。

            满足访问树。令\tau为根为r的访问树,用\tau _{x}表示以节点x为根的\tau的子树,因此\tau\tau _{r}是一样的,如果一组属性\gamma满足访问树\tau _{x},我们将其表示为\tau_{x} (\gamma )=1,递归计算\tau _{x}(\gamma )。如果x是非叶子节点,则计算节点x的子节点x{}'的值\tau _{x{}'}(\gamma ),当至少k_{x}个子节点返回1时\tau _{x}(\gamma )返回1。如果x是叶子节点,当且仅当att(x)\in \gamma\tau _{x}(\gamma )返回1。

    CP-ABE过程

            G0是素数阶p的双线性群,g是G0的生成元。此外e:G0\times G0\rightarrow G1表示双线性映射。安全参数k将确定群的大小。同时为i\in Z_{p}Z_{p}中元素的集合S定义拉格朗日系数:

                                                         \Delta _{i,S}(x)=\prod_{j\in S,j\neq i}^{}\frac{x-j}{i-j}  

            另外使用一个哈希函数H:\left \{ 0,1 \right \}^{*}\rightarrow G0,将其建模为随机预言机,功能会将任意描述为二进制字符串的属性映射到随机群元素。构造如下:

    Setup:选择一个具有生成元g的素数阶p的双线性群G0。接下来选择两个随机指数\alpha ,\beta \in Z_{p},公钥公布如下:

                                                 PK=G0,h=g^{\beta },f=g^{\frac{1}{\beta }},e(g,g)^{\alpha }

    主密钥MK为:(\beta ,g^{\alpha }),这里的f仅仅用来委托。

    Encrypt(PK,M,\tau):加密算法将在访问结构\tau下加密消息M。首先为树\tau中的每个节点选择一个多项式q_{x}。(包括叶子节点),这些多项式从根节点R开始以一种自顶向下的方式选择。

            对于树中的每个节点x,设置多项式q_{x}的次数比节点阈值少一,也就是d_{x}=k_{x}-1。首先,从根节点R开始,随机选择一个s\in Z_{p}并且设置q_{R}(0)=s,然后d_{R}次多项式q_{R}的其他点完全随机的选取。对于任意的其他节点x,设置q_{x}(0)=q_{parent(x)}(index(x)),其他点随机选择来定义q_{x}。令Y为\tau中叶子节点集合,然后通过给出的访问结构\tau构造密文如下:

    CT=(\tau ,C\widetilde{}=Me(g,g)^{\alpha s},C=h^{s},\forall y\in Y:C_{y}=g^{q_{y}(0)},C{}'_{y}=H(att(y))^{q_{y}(0)})

    KeyGen(MK,S):密钥生成算法以一组属性S作为输入,并输出以该集合表示的密钥。算法首先选择一个随机r\in Z_{p},然后为每个属性j\in S选择随机r_{j}\in Z_{p},然后计算密钥为:

    SK=(D=g^{(\alpha +r)/\beta },\forall j\in S:D_{j}=g^{r}\cdot H(j)^{r_{j}},D{}'_{j}=g^{r_{j}})

    Delegate(SK,S\widetilde{}):委托算法接受一个密钥SK,用于一组属性S和令一组属性S\widetilde{},其中S\widetilde{}\subseteq S。密钥的形式为SK=(D,\forall j\in S:D_{j},D{}'_{j}),算法选择一个随机r\widetilde{}r\widetilde{}_{k}\forall k\in S\widetilde{},然后它创造一个新的密钥:

    \widetilde{SK}=(\widetilde{D}=Df^{\widetilde{r}},\forall k\in \widetilde{S}:\widetilde{D_{k}}=D_{k}g^{\widetilde{r}}H(k)^{\widetilde{r}k},\widetilde{D{}'_{k}}=D{}'_{k}g^{\widetilde{r}k})

    得到的密钥\widetilde{SK}是集合\widetilde{S}的密钥。因为这个算法重新随机化了密钥,所以委托密钥等同于直接从权威机构得到一个。

    Decrypt(CT,SK):解密过程是一个递归过程。我们首先定义一个递归算法DecryptNode(CT,SK,x),以密文CT=(\tau ,\widetilde{C},C,\forall y\in Y:C_{y},C{}'_{y}),一个与一组属性关联的私钥SK和\tau中的一个节点为输入。如果节点x为叶子节点,令i=att(x),定义如下:如果i\in S,则

    DecryptNode(CT,SK,x) =  \frac{e(D_{i},C_{x})}{e(D{}'_{i},C{}'_{x})}

                                         =\frac{e(g^{r}\cdot H(i)^{r_{i}},h^{q_{x}(0)})}{e(g^{r_{i}},H(i)^{q_{x}(0)})}

                                         =e(g,g)^{rq_{x}(0)}

    如果i\notin S,定义DecryptNode(CT,SK,x) =\perp

            当x不是叶子节点时,DecryptNode(CT,SK,x) 算法过程如下:对于x的所有子节点z,调用DecryptNode(E,D,z)并保存输出为F_{z},令S_{x}为任意k_{x}大小的子节点z的集合,使得F_{z}\neq \perp,如果这样的集合不存在,则节点不满足,函数返回\perp。否则,计算如下:

                                   F_{x}=\prod_{z\in S_{x}}^{}F_{z}^{\Delta _{i,S{}'_{x}}(0)},where i=index(z),S{}'_{x}=\left \{ index(z):z\in S_{x} \right \}

                                        =\prod_{z\in S_{x}}^{}(e(g,g)^{r\cdot q_{z}(0)})^{\Delta _{i,S{}'_{x}}(0)}

                                        =\prod_{z\in S_{x}}^{}(e(g,g)^{r\cdot q_{parent(z)}(index(z))})^{\Delta _{i,S{}'_{x}}(0)}

                                        =\prod_{z\in S_{x}}^{}e(g,g)^{r\cdot q_{x}(i)\cdot \Delta _{i,S{}'_{x}}(0)}

                                        =e(g,g)^{r\cdot q_{x}(0)}

    返回结果,如果这个树被集合S满足,设置A=DecryptNode(CT,SK,r)=e(g,g)^{rq_{R}(0)}=e(g,g)^{rs}。这个算法通过计算\widetilde{C}/(e(C,D)/A)=\widetilde{C}/(e(h^{s},g^{(\alpha +r)/\beta })/e(g,g)^{rs})=M,这样就得到了明文信息。

     参考文献

    BETHENCOURT J, SAHAI A, WATERS B. Ciphertext-policy attribute-based encryption[C]

     

    展开全文
  • 云计算-基于外包计算的属性基加密研究.pdf
  • 为此,提出一种改进的基于仲裁者的密文策略的属性基加密方案,使其能够在具有外包解密的同时可以实现细粒度属性及时撤销。该方案通过构造KEK树及时更新密钥和密文以此来及时撤销细粒度属性。此外,针对现有的密文...
  • 云计算-面向云计算的属性基加密数据访问控制方法.pdf
  • 在对传统的属性基加密研究的基础上,提出了一个支持面向群组协作的密文策略属性基加密方案。在方案中,访问控制策略由“与”和“或”逻辑门构成,用户被划分为不同的群组,只有来自同一群组的用户且他们的属性集合...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,515
精华内容 3,406
关键字:

属性基加密

友情链接: Ahmed.Okba.Alexis.rar