完全安全可撤销ABE通用构造

完全安全可撤销属性基加密的通用构造

山田琴子1,2(B),纳塔蓬·阿特拉帕东2,江村圭太3,花岡五一大2,和田中启介1
1东京工业大学,日本东京yamada3@is.titech.ac.jp2产业技术综合研究所(AIST),日本东京3信息通信研究机构(NICT),日本东京

1 引言

密码学原语被广泛用于构建安全系统,而由萨哈伊和沃特斯提出的基于属性的加密(ABE)[27],由于其与灵活访问控制的高度契合性,成为构建安全系统中最流行的密码学原语之一。加密者指定密文属性,只有当用户的属性满足解密策略时,才能对密文进行解密。

当用户注册系统时,会生成或被颁发加密密钥,例如解密密钥或签名密钥。因此,为了构建安全的系统并实现其长期使用,密钥撤销功能对于处理用户从系统中退出的情况至关重要且不可或缺。

本文档由funstory.ai的开源PDF翻译库BabelDOCv0.5.10(http://yadt.io)翻译,本仓库正在积极的建设当中,欢迎star和关注。

通用构造 用于完全安全的可撤销ABE 533

密钥泄露等问题。尤其是在基于ABE的系统中,由于用户可能共享相同的属性,因此撤销特定用户并非易事。

为了在ABE环境中处理撤销问题,可撤销ABE(RABE)已被提出[5,6]其中用户的私钥不仅与属性相关联,还与其身份相关联。加密者除了指定密文属性外,还需指定一组被撤销用户的身份,只有当用户属性满足解密策略且该用户未在被撤销用户列表中时,才能对密文进行解密并且其身份未在被撤销用户列表中被指定。由于加密者直接指定了被撤销集合,这种类型的RABE被称为直接撤销。另一种称为间接撤销的机制也已被提出[5,10,28],其中撤销机制通过密钥更新间接实现(所有未被撤销的用户都需要执行)。本文聚焦于直接类型,即无需进行密钥更新。

目前,具有各种功能的“不可撤销”普通ABE已被广泛构造,例如密钥策略(KP)、密文策略(CP)、支持正则语言[2,31],且具有无界属性大小和策略结构[2,22,26],以及固定大小密文或私钥[1,2,4,8]。此外,一种称为对编码框架[2]的用于构造完全安全ABE的通用框架已被提出。由于该框架能够生成具有多种功能的完全安全ABE,因此实现完全安全的属性基加密方案的方法已在(虽非完全但显著地)得到明确。

然而,与普通的ABE相比,目前提出的RABE方案数量很少 [5,6,13,14,20,30], ,且除了[14,20]之外的所有方案仅提供选择性安全,这是一种弱于完全安全的安全模型。此外,所有这些方案都是特定的构造,即它们基于每篇论文所关注功能对应的代数结构。特定方法的一个明显缺点是设计过程效率低下:每次都需要针对所需功能逐一重新设计RABE。因此,为了构建具有多种功能的RABE方案,期望提出一种从ABE出发的通用构造方法,以保留底层ABE的功能。

1.1 我们的贡献

通用构造。 我们提出了两种从ABE出发的RABE通用构造。这两种构造具有不同类型的通用性,且相互补充。第一种构造C1,的通用性体现在它能够处理针对任意谓词的ABE,但该构造必须位于对编码框架[2,3]内。另一方面,第二种构造C2,的通用性体现在它适用于任意构造的ABE(不一定局限于对编码框架),尽管其仅限于可表示为布尔公式的谓词。

隐含实例化。 由于我们的构造保留了底层ABE的功能,我们可以首次实例化多个完全安全的RABE方案f orthefirsttime,包括:

• 支持正则语言的KP,CP‐RABE
• 支持无界属性大小和策略结构的KP,CP‐RABE
• 具有固定大小密文的KP,CP‐RABE
• KP,CP‐RABE带常数大小私钥 此外,我们的构造涵盖了基于简单假设的完全安全的KP,CP‐RABE,如[14]中所述。
我们将在第5节中提供更详细的比较。

1.2 我们的方法

构造的基本思想 C1。 如上所述,在RABE中,加密者不仅指定属性,还指定一组被撤销用户的身份。我们的观察是,后一种功能类似于基于身份的撤销( IBR)[7,21]。因此,合取地结合ABE和IBR来构造RABE将是一个自然的想法。

然而,简单的组合方式(例如双重加密)会导致共谋攻击。为此,我们利用[9],中的通用合取转换,该转换可在对编码框架下安全地将任意两个ABE方案进行合取组合。因此,转换C1的输入是该框架中的任意ABE方案。

另一方面,据我们所知,目前尚未提出在对编码框架内描述的IBR。因此,我们新提出了此类IBR。为了实现灵活性,我们至少提供了三种IBR方案:一种是特定的,另外两种是通用的。它们的性质各不相同:基本上,第一种方案实现固定大小密文,但仅允许有限数量的被撤销用户,而后两种方案在某些实例化中允许无界数量的被撤销用户。这些性质将继承到最终的RABE中。

我们提供的第一个IBR是Attrapadung等人[8]的方案。我们证明了他们的方案可以用对编码框架描述,并满足所需的安全性。

第二种和第三种IBR分别基于[23]中提出的组合方法,称为完全子树( CS)和子集差分(SD)。这两种方案在密钥和密文大小方面具有不同的优势 (见第3.2节和4.2节)。这些方案最初是对称密钥方案[23],,由多迪斯和法齐奥通过使用基于身份的加密(IBE)[11,29]和分层IBE(HIBE)[17,19]分别将其转换为公钥变体(并可视为IBR),用于CS和SD方案。已知当底层IBE或HIBE是完全安全时,它们的IBR也是完全安全的。然而,当将这些方案表示为对编码(如合取转换所要求的)时,我们发现表示IBE的对编码到基于CS的 IBR的安全性并未保持,类似地,HIBE到基于SD的IBR的安全性也未保持。具体而言,如果基于CS的IBR方案和基于SD的IBR方案分别由IBE和HIBE构造,则我们可以展示针对它们的攻击。由于篇幅限制,我们将在本文的完整版本中展示这些攻击。

为了解决这一问题,对于基于CS的方案,我们不再使用[15],中的IBE,而是采用支持布尔公式的ABE。而对于基于SD的方案,我们不再使用[15],中的 HIBE,而是采用针对“前缀谓词”的ABE。后者是一种新原语,我们证明了它可由密钥策略双重空间加密(KP‐DSE)[2]推导得出。

构造的基本思路 C2。

尽管对编码框架涵盖了各种ABE,但仍有一些未被包含,例如冈本和高岛提出的基于DLIN的ABE[24,25]。我们的第二个通用构造允许将任何支持布尔公式的ABE转换为同样支持布尔公式的RABE。原始的ABE无需符合对编码框架。

我们的观察是,RABE是ABE与IBR的合取(AND)关系;因此,我们将ABE中的原始策略与表示撤销(针对IBR)的策略通过AND连接起来。为了实现这一点,ABE和IBR都必须支持布尔公式。后一种策略可以通过我们在方案C1中使用ABE对CS方法的表示精确地获得。

2 预备知识

在本节中,我们定义一些符号和密码学原语。

符号说明。 如果 A 是一个概率多项式时间(PPT)算法,则 y← A(x)表示将 y 赋值为 A 在输入 x上的输出。如果 S 是一个有限集合,则 x←−$ S表示 x 从 S中均匀随机选取,而 2S 表示 S的幂集。 Oa×b表示一个 a× b零矩阵, Ea表示一个 a× a单位矩阵。

树结构。 我们假设一个深度为 的满二叉树 T。令LT为 T中所有节点的集合。每个节点由{0, 1}≤中的一个字符串描述。根节点是起始节点,用空字符串 ε表示,根节点的子节点分别为0和1。对于节点 v,其左子节点和右子节点分别表示为 v||0和v||1。对于每个节点 v ∈ LT,其兄弟节点Sibling(v)是指与 v共享父节点的节点。对于树 T中的节点 v,令Path(v)表示从根节点到 v的路径上的所有节点的集合,Parent(v)表示 v的父节点,Leaves(v)表示以 v为根节点的子树中所有叶节点的集合。对于节点 v, w ∈ LT,path(v, w)表示从 v到 w的路径。

2.1 可撤销属性基加密

在本节中,我们定义可撤销的基于属性的加密(RABE)的语法。由于RABE可以被定义为针对特定谓词的ABE,因此我们首先定义ABE的语法,然后得到 RABE的语法。安全性定义同理,但由于篇幅限制,我们将ABE完全安全性的 (标准)定义参考至[2]。

谓词族[2]。 我们考虑某个常数 c ∈ N下的谓词族R={Rκ}κ∈ N c。关系Rκ: Xκ × Yκ→{0, 1}是一个谓词函数,它将一个密钥属性空间 Xκ中的密钥属性和一个密文属性空间 Y κ中的密文属性映射到{0, 1}。索引 κ=(n1, n2,…)指定了来自该族的谓词的描述。 κ中的一些参数指定了属性全集、策略结构或属性大小的界限。当这些是无界时,我们用“‐”表示。为简便起见,我们通常省略 κ。

基于属性的加密(ABE)。 一个针对谓词族R的ABE方案由四个算法组成: (Setup,KeyGen,Encrypt, Decrypt)。

设置:该算法以安全参数 1λ 和谓词族R的族索引 κ 作为输入,输出主公钥 PK和主私钥MSK。

KeyGen:密钥生成算法以密钥属性 X ∈ Xκ和主私钥MSK作为输入,输出一个私钥SK。

加密:加密算法以密文属性 Y ∈ Yκ、消息 M ∈ M和公钥PK作为输入,其中 M是消息空间,并输出密文CT。

解密:解密算法以密文CT和私钥SK作为输入,输出一个消息 M或 ⊥。

正确性。 对于所有索引 κ,所有 M ∈ M、 X ∈ Xκ 和 Y ∈ Yκ 满足Rκ(X, Y)= 1,如果(PK,MSK)← Setup(1λ, κ),SK← KeyGen(X,MSK, PK)且CT← Encrypt(Y, M,PK),则Decrypt(CT, SK)= M成立。

可撤销的基于属性的加密(RABE)。 接下来,我们定义RABE。如前所述, RABE可以被定义为针对特定谓词的ABE。简而言之,在RABE中,每个用户除了具有一个密钥属性X外,还拥有一个唯一的身份ID ∈ID,而加密者除了指定一个密文属性Y外,还需指定一个被撤销用户列表RL。当且仅当ID∈/不在RL中且R(X, Y)= 1成立时,用户才能解密该密文。由于这一功能,针对谓词族R的RABE可以被视为针对如下定义的谓词PR的ABE。

• 参数:由(κ, m, R)指定,其中 κ是谓词族R的一个参数, m表示身份空间的大小 ID={0, 1}log m, R表示撤销列表RL的最大大小。

• 密钥属性:由一对(X,ID) ∈ X × ID指定。 X ∈ X是谓词R的密钥属性,而ID ∈ID是用户身份信息。

• 密文属性:由一对(Y, RL) ∈ Y×2ID指定,使得|RL| ≤ R。 Y ∈ Y是谓词R 的密文属性,RL ∈ 2ID是被撤销用户集合。

• 谓词:PR((X, ID),(Y, RL))={1 0当且仅当R(X, Y)= 1 ∧ID∈/RL时成立,否则不成立

2.2 基于身份的撤销与其他谓词

在我们的构造中,我们采用基于身份的撤销(IBR)、用于布尔公式的ABE以及用于前缀谓词的ABE作为构建模块。与RABE类似,这些原语也可以定义为用于特定谓词的ABE。

基于身份的撤销(IBR)。 在IBR中,每个接收者的私钥与其身份ID相关联,加密者指定一个被撤销用户列表RL。当且仅当ID∈/RL时,接收者才能解密密文并获得消息。IBR方案是针对以下谓词I和属性的ABE方案。

• 参数:由(m, R)指定,其中 m表示身份空间大小 ID, R表示撤销列表RL的最 大小。

• 密钥属性:由用户身份信息ID ∈ID指定。

• 密文属性:由一组被撤销用户RL∈ 2ID指定,使得 |RL| ≤ R。

• 谓词:I(ID, RL)={1 0如果ID∈/RL,否则

布尔公式谓词。 用于集合 U上布尔公式的AKP‐ABE方案是一种针对以下谓词RBool和属性的属性基加密方案。

• 参数:由(U, K, S, T)指定,其中 U表示属性空间的大小 |U|, K表示布尔 公式的最大长度,S表示属性集的最大大小, T表示在布尔公式中同一属性出现的最大次数。

• 密钥属性:由 U上的布尔公式 f指定。即一个字符串,其中 U中的某些元素通过“∨”或 “∧”连接。

• 密文属性:由集合 Y ⊂U指定。

• 谓词:RBool(f, Y)={1 0如果f|{x=true|x∈Y}=为真,否则 注意,CP‐ABE对于布尔公式的谓词可以通过交换密钥属性和密文属性的角色来定义。

前缀谓词。 我们引入新的谓词:前缀谓词。我们通过用于前缀谓词的ABE来构建IBR,而用于前缀谓词的ABE可由密钥策略双重空间加密(KP‐DSE)导出[2]。因此,IBR可以从KP‐DSE构造。我们在附录A中讨论这一点。前缀谓词定义如下:

• 参数:由(N, , S1, S2)指定,其中 N定义了向量中元素的全域 ZN, 表示向量的最大尺寸, S1和S2分别表示密钥属性集和密文属性集的最大尺寸。•密钥属性:由一个集合X ⊂ Z ≤ N指定。

• 密文属性:由集合Y ⊂ Z ≤ N 指定。

• 谓词:R前缀(X, Y)={1如果存在 x ∈ X和 y ∈ Y使得 y0 是 x的前缀,否则 例如,考虑 X={(2,56),(3,24,2),(11, 97, 47)}和 Y={(2, 56, 7),(8,5)},我们有R prefix(X, Y)= 1,因为(2,56) ∈ X是(2, 56, 7) ∈ Y的前缀。

2.3 PairEncoding框架

在本节中,我们回顾了Attrapadung[2]提出的对编码框架。我们在构造C1中采用了该框架。他提出了对编码,并表明可以从针对谓词族R的对编码方案构造出一个针对谓词族R的ABE方案,并且如果该对编码方案满足其安全概念,则所构造的ABE方案

是完全安全的。由于对编码方案的安全性比属性基加密方案的完全安全性更容易证明,因此通过该框架,我们可以比直接构造更加容易地构造完全安全的 ABE方案。尽管该框架[2]采用了合数阶双线性群,但后来Attra‐padung[3]提出了另一种基于素数阶双线性群的对编码框架。虽然我们的通用构造可以同时使用合数阶和素数阶群,但在本文中我们由于效率原因专注于素数阶群。

配对编码方案的语法[3]。 谓词族R的对编码方案由四个确定性算法 PE= (Param,Enc1,Enc2,Pair)构成,如下所示,其中素数 p表示群的大小。

• Param(κ)→ n。它以索引 κ 作为输入,输出一个整数 n,用于指定Enc1和Enc2中公共变量的数量。按照默认表示法,令 h=(h1,…, hn)表示公共变量的列表。

• Enc1(X)→(k;m2)。它以X ∈ Xκ作为输入,输出一个系数在 Zp中的多项式序列 k={ki}i∈[1,m1],以及 m2 ∈ N。我们要求每个多项式 ki是单项式 α, rj, hkrj的线性组合,其中 α, r1,…, rm2, h1,…, hn是变量。记作 r=(r1,…, rm2)。

• Enc2(Y)→(c; w2)。它以Y ∈ Yκ作为输入,输出一个系数在 Zp中的多项式序列 c={ci}i∈[1,w1],以及 w2 ∈ N。我们要求每个多项式 ci是单项式 sj, hksj的线性组合,其中s0, s1,…, sw2, h1,…, hn是变量。记 s=(s0, s1,…, sw2)。

正确性。 正确性要求定义如下:设(k;m2)←Enc1(X),(c; w2)← Enc2(Y),且 E← Pair(X, Y)。我们有:若R(X, Y)= 1,则 kEc= αs0,其中等式在符号意义上成立。

Attrapadung[2,3]提出了安全概念以及称为配对编码的正则性的另一性质。由于篇幅限制,我们省略了它们的定义。详情请参考相关论文。此外,他基于对编码方案在素数阶群上构造了ABE ABE(PE)。我们在构造C1,中采用了该构造,但本文未对其进行描述。详情请参考[3]。他证明了以下引理。

引理 1([3]中的定理 4)。 如果 PE 具有主密钥隐藏性,且矩阵Diffie-Hellman假设[16] 在 G中成立,则 ABE(PE)是完全安全的。

2.4 嵌入引理

在本节中,我们回顾嵌入引理[4,12]。我们将通过该引理展示ABE或对编码之间的蕴含关系。

该引理考虑两个任意的谓词族:Rκ: Xκ× Y κ→{0, 1}和R′ κ ′: X′κ ′ × Y ′κ ′ →{0, 1},,它们分别由参数 κ ∈ K 和 κ′ ∈K ′ 进行参数化。我们称嵌入关系成立,当且仅当存在三个高效映射 gp : K′→ K、 gk:X ′κ ′→ X gp (κ′ ) 和 fe:Y ′κ ′→ Y gp (κ′ ),分别用于映射参数、密文属性和密钥属性,使得对所有 X′ ∈ X′κ ′, Y ′∈ Y ′κ ′,,R′ κ ′(X ′, Y ′)= 1⇔ Rgp (κ′ )(gk( X′) fe( Y ′))= 1 成立。

完全安全可撤销属性基加密的通用构造53 9

引理2(嵌入引理[4,12])。 假设Rκ与R′κ′之间的嵌入关系成立,并且存在针对谓词Rκ的完全安全的ABE方案。那么我们可以高效地构造出针对谓词R′κ′的完全安全的ABE方案。

对于对编码方案,类似的引理也成立,但由于篇幅限制,我们省略了该引理的证明。该证明可以很直接地完成,我们将在本文的完整版本中展示它。

3 从ABE构建RABE的通用构造

在本节中,我们给出了从ABE构建RABE的两种通用构造方法。第一种通用构造C1使用ABE和IBR作为构建模块,并且两者都必须用对编码框架来描述。如前所述,可以在对编码框架内构造具有各种功能的多个ABE方案。我们可以将所有这些方案都用作构造C1的构建模块。另一方面,据我们所知,目前尚未提出用对编码框架描述的IBR。因此,我们将在第4节中提出此类IBR。

与第一种构造不同,在第二种通用构造C2,中,底层ABE不需要用对编码框架来描述。相反,要求底层ABE的谓词能够覆盖布尔公式。构造C2使我们能够实例化那些不在构造C1覆盖范围内的RABE方案。

3.1 C1:基于对编码的RABE构造

在我们的第一个通用构造C1,中,我们通过ABE和IBR来构造RABE。具体而言,我们从用于R的对编码方案 PEabe和用于I的对编码方案 PE ibr构造出一个用于 PR的对编码方案 PE。注意,对编码方案 PEabe和 PE ibr分别提取自底层 ABE方案 ABE和IBR方案 IBR。然后,我们将 PE编译成一个用于PR的 ABE方案C1(ABE,IBR)。如第2.1节所述,用于PR的ABE即为R上的RABE。

需要注意的是,如果将用于R的ABE和IBR简单地组合在一起,则无法提供抗合谋性。也就是说,如果有两个用户共谋,其属性分别满足R和I,则他们可以共同解密密文,即使每个用户individually都不允许解密。因此,我们采用 Attrapadung和Yamada提出的[9]技术,该技术能够安全地组合对编码方案以实现抗合谋性。这样一来,只有当用户的属性同时满足R和I时,才能解密密文。详见 [9]中的定理9。

我们的构造C1如下所示。

构造C1。 设 PEabe=(Paramabe,Enc1abe,Enc2abe,Pairabe)是谓词族R的对编码方案, PE ibr=(Paramibr,Enc1ibr,Enc2ibr,Pairibr)是谓词族I的对编码方案。则谓词族PR的对编码方案 PE=(Param,Enc1,Enc2,Pair)定义如下:

参数(κ):运行 nabe←参数abe(κ), nibr←参数ibr(κ)。输出 n:= nabe+nibr。

Enc1((X,ID) N):运行(kabe; mabe 2)←Enc1abe(X, N)和(kibr; mibr 2)←Enc1ibr (ID N)。输出(k; mabe 2+ mibr 2+ 1),其中 k定义如下:k(α,(rabe, ribr, r′),(habe, hibr))=(kabe(r′, rabe,habe) kibr(α − r′, ribr,hibr))。Enc2((Y,RL) N):运行( cabe; wabe 2)←Enc2abe(Y, N)和(cibr; wibr 2)←Enc2ibr(RL N)。输出(c; wabe 2+ wibr 2),其中 c定义如下:c((s0, sabe, sibr),(habe,hibr))=(cabe((s0, sabe) habe) cibr((s0, sibr) hibr))。Pair((X,ID),(Y,RL) N):运行Eabe ←Pairabe( X, Y, N)和Eibr ←Pairibr(ID,RL N)。输出 E=( Eabe Omabe 1 ×wibr Omibr 1 ×w abe 1 Eibr)

上述对编码方案 PE的正确性源于 PEabe和PE ibr的正确性。直观上,当谓词PR被满足时,根据 PEabe的正确性,我们有 kabeEabecabe=r′s0,且根据 PE ibr的正确性,有 kibrEibrcibr=(α−r′)s0,从而可得 αs0。以下引理由[9]中的定理9得出。

引理3. 如果PEabe和 PE ibr均为主密钥隐藏,则针对谓词族PR的上述对编码方案 PE也是主密钥隐藏。

定理1. 如果针对谓词族R的对编码方案PEabe和针对谓词族I的对编码方案PE ibr均为 主密钥隐藏,则RABE方案C1(ABE,IBR)在矩阵Diffie-Hellman假设[16]下是完全安全的。

证明。由引理3可知,若PEabe和 PE ibr是主密钥隐藏的,则用于谓词族PR的对编码方案 PE是主密钥隐藏的。由引理1可知,从 PE构造的RABE方案 C1(ABE,IBR)在矩阵Diffie‐Hellman假设[16]下是完全安全的。

3.2 C2:基于布尔公式的RABE构造

尽管对编码框架涵盖了多种ABE,但它并未涵盖某些理想的ABE(例如,在 DLIN假设[24,25]下安全的ABE)。在本节中,我们提出第二种通用构造C2, 可将任何支持布尔公式的ABE转换为RABE。我们证明了用于谓词R的ABE(覆盖布尔公式)蕴含了用于谓词R的RABE。该构造C2可以使用目前未被对编码框架描述的ABE,但其谓词受限于覆盖布尔公式的情形。因此,我们的构造C1和C2之间存在一种权衡。

我们采用CS方法[23],其中每个用户身份与树的一个叶节点相关联。首先我们回顾一下 CS方法。

完全子树方法[23]。 设 T为深度log m的满二叉树,其中 m为最大用户数。此处简要描述CS方法的算法,详细描述请参见[23]。

CS.Assign(T,ID):它以树 T 和一个用户身份ID ∈ID 作为输入,输出一个节点集合 VID:=Path(ID)。

CS.Cover(T,被撤销用户列表RL):它以树 T 和被撤销用户列表RL作为输入,并输出一个覆盖集合 WRL:={v ∈ LT |v∈/ X ∧ Parent(v) ∈ X},其中X:=⋃w∈SPath(w)。

当VID← CS.Assign(T,ID)和 WRL← CS.Cover(T,RL)时,则ID∈/RL⇔ VID ∪ WRL= ∅ 成立,其中 ∅ 表示空集。已知 |VID| =log m+1 且 |WRL| ≤ r log(m/r),其中 r= |RL|。详见[23]。图1和图2是CS.Assign和CS.Cover的示例,其中 m= 8。

={ε, 1, 10, 101})

={00, 1})

尽管构造C2可以采用任何提供布尔公式的ABE,但为了简化起见,我们仅考虑 用于布尔公式的aKP‐ABE。

构造C2。 设 ABE Bool 是一个定义在 U ∪ LT 上的针对布尔公式的KP‐ABE方案。我们通过将其属性转换为 ABE Bool 的属性,构建一个定义在U 上的针对布尔公式的 RABE方案 RABE,具体如下:

• 参数:我们将gp((U, K, S, T) m)映射为(U+ 2m−1, K+ log m+ 1, S+R log(m/R) T)。当某些参数为无界时,相应的映射参数也为无界。

• 密钥属性:考虑一个关于 U 和用户身份ID的布尔公式 f。运行 VID={v1, v2,…, v|VID | }← CS.分配(T, ID),并令fID= v1 ∨v2 ∨· · ·∨v|VID |。我们将gk(f,ID)映射到ID。

• 密文属性:考虑一个集合 S和一个撤销列表RL。我们映射ge(S, RL)= S ∪WRL,其中 WRL← CS.Assign(T,RL)。

定理2. 如果一个ABE方案ABE Bool是完全安全的,那么上述RABE方案 RABE也是 完全安全的。

证明。以下成立,然后该定理由嵌入引理得出。

PRBool((f , ID),(S, RL))= 1⇔ f|{x=true|x∈ S}= true ∧ ID∈/ RL
⇔ f|{x=true|x∈ S} = true ∧ VID ∩WRL= ∅
⇔ f|{x=true|x∈ S} = true ∧ fID|{v=true|v∈WRL } = true
⇔(f ∧ fID)|x=true|x∈ S ∪WRL ⇔ R Bool (gk(f, ID), ge(S, RL))= 1.

4 用于构造的IBR方案C1

在本节中,我们提出在对编码框架下的IBR构造。首先,我们给出一种基于 CS的IBR构造,该构造可通过采用由对编码框架描述的ABE实例化,其谓词涵盖布尔公式。接着,我们给出一种基于SD的IBR构造,该构造可通过采用用于前缀谓词的ABE实例化,该ABE由对编码框架描述。尽管我们也表明 ALP‐IBR方案[8]可在具有所需安全性的对编码框架中进行描述,但由于篇幅限制,此处省略其详细描述,相关内容将在本文的完整版本中展示。

4.1 基于CS的IBR

首先,我们给出一个基于CS的IBR构造。该构造可以通过使用由对编码框架描述的任何ABE来实例化,其谓词涵盖布尔公式。尽管许多谓词都涵盖布尔公式,但为了简单起见,我们仅考虑针对布尔公式的KP‐ABE。我们采用在第3.2节中提到的CS方法。

我们的基于CS的IBR。 设 PE Bool是谓词族RBool的一个对编码方案。我们通过将其属性转换为 PE Bool的属性,构造一个用于谓词族I的对编码方案 PE ,如下所示:

• 参数:我们将gp(m, R)映射为(2m, log m, R,1)。这里我们假设 U={0, 1} log m。当 m或 R为无界时,相应的映射参数也是无界的。

• 密钥属性:考虑一个用户身份ID∈ ID。运行 VID={v1, v2,…, v|VID| }← CS。 Assign(T,ID),并令fID= v1 ∨ v2 ∨ · · · ∨ v|VID|。我们将gk(ID)= fID进行映射。

• 密文属性:考虑一个撤销列表RL。我们将ge(RL)=WRL映射,其中 WRL ← CS.Assign(T,RL)。

PE的安全性保留了 PE Bool的安全性。这由以下引理及对编码方案的嵌入引理得出。

引理4。 对于所有ID和RL,Iκ(ID,RL)= 1⇔ R Bool gp(κ)(gk(ID) ge(RL))= 1。

Proof.为简便起见,此处省略参数 κ 和 gp( κ) .
I(ID, RL)= 1⇔ ID∈/ RL⇔ VID ∩WRL= ∅
⇔ fID|{v=true|v∈WRL} = true⇔ RBool (gk(ID), ge(RL))= 1.

4.2 基于子集差的IBR

接下来,我们给出一个基于SD的IBR构造,该构造可以通过采用由对编码方案描述的用于前缀谓词的ABE来实例化。在此构造中,我们采用SD方法[23]其中每个用户身份都与树的一个叶节点相关联。

集合差分方法[23]。 设 T为深度为log m的满二叉树,其中 m为最大用户数。此处简要描述SD方法的算法,详细描述请参见[23]。

SD.Assign(T,ID):它以树 T 和用户身份ID作为输入,输出一个集合 VID:={(vi, vj) ∈ LT × LT | Sibling(vj) ∈ Path(ID) ∧ vi ∈ Path(vj).}。SD.Cover(T,RL):它以树 T 和被撤销用户列表RL作为输入,输出一个覆盖集合WRL:={(vi, vj) ∈ LT × LT | vi ∈ Path(vj)∧Leaves(vj) ⊂RL∧ Leaves(vi)\ Leaves(vj) ⊂ID\ RL}

当VID← SD.Assign(T,ID)且 WRL← SD.Cover(T,正则语言)时,ID∈正则语言 成立当且仅当存在 vi, vj, vj′,同时满足以下两个条件: 1.(vi, vj) ∈ VID且(vi, vj′) ∈ WRL2.从 vi 到 vj 的路径是从 vi 到 vj′的路径的前缀。 已知|VID| ≤log2 m和 |WRL| ≤ 2r−1,其中 r= |正则语言|。详见[23]。图3和图4展示了 SD.分配和SD.覆盖的示例,其中 m= 16。由于 12 ∈正则语言,我们观察到SD.分配(T, 12)中的(1,10)是 SD.覆盖(T,正则语言)中路径(1,10,101)=(1,101)的前缀。

={(ε,0),(ε,1,10),(ε,1,11,111),(ε,1,11,110,1101),(1,10),(1,11,111), (1, 11, 110, 1101),(11,111),(11, 110,1101)(110, 1101)})

={(0, 00),(1, 101),(000, 0000)})

我们基于子集差的IBR. 我们使用ABE实现由KP‐DSE隐含的前缀谓词[2]。详见附录A中的细节。

设 PE p refix是前缀谓词Rp refix的对编码方案。我们通过将谓词I的属性转换为 PE p refix 的属性,构造谓词I的对编码方案 PE。设 H: LT → Z N是一个双射函数。 1 1抗碰撞哈希也足够,但引理5在计算意义上成立。

• 参数:我们将gp(m, R)=(N

随着信息技术在管理上越来越深入而广泛的应用,作为学校以及一些培训机构,都在用信息化战术来部署线上学习以及线上考试,可以与线下的考试有机的结合在一起,实现基于SSM的小码创客教育教学资源库的设计与实现在技术上已成熟。本文介绍了基于SSM的小码创客教育教学资源库的设计与实现的开发全过程。通过分析企业对于基于SSM的小码创客教育教学资源库的设计与实现的需求,创建了一个计算机管理基于SSM的小码创客教育教学资源库的设计与实现的方案。文章介绍了基于SSM的小码创客教育教学资源库的设计与实现的系统分析部分,包括可行性分析等,系统设计部分主要介绍了系统功能设计和数据库设计。 本基于SSM的小码创客教育教学资源库的设计与实现有管理员,校长,教师,学员四个角色。管理员可以管理校长,教师,学员等基本信息,校长角色除了校长管理之外,其他管理员可以操作的校长角色都可以操作。教师可以发布论坛,课件,视频,作业,学员可以查看和下载所有发布的信息,还可以上传作业。因而具有一定的实用性。 本站是一个B/S模式系统,采用Java的SSM框架作为开发技术,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得基于SSM的小码创客教育教学资源库的设计与实现管理工作系统化、规范化。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值