属性基加密——模糊身份基加密(FIBE)

属性基加密——模糊身份基加密(FIBE)引言在身份基加密被提出以后 又出现了模糊身份基加密 FIBE 也可以说是属性基加密雏形

大家好,欢迎来到IT知识分享网。

目录

 

引言

模糊身份基加密

相关补充


 

引言

        在身份基加密被提出以后,又出现了模糊身份基加密(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]

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/119681.html

(0)
上一篇 2025-11-03 19:20
下一篇 2025-11-03 19:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信