概率CSP的计算可靠性分析与基于属性集的加密方案
1. 引言
在分布式系统中,用户常需依据接收方满足策略的能力来共享敏感对象。属性基加密(ABE)作为一种新的加密范式,能在加密算法中对共享策略进行指定和加密实施。ABE主要有两种形式:密钥策略属性基加密(KP - ABE)和密文策略属性基加密(CP - ABE)。
- KP - ABE :属性策略与密钥相关联,数据则标注有属性,只有与满足数据属性策略的密钥才能解密数据。
- CP - ABE :属性策略与数据相关联,属性与密钥相关联,只有密钥的关联属性满足数据关联策略时才能解密数据。
CP - ABE更符合传统访问控制模型,其中Bethencourt等人提出的BSW方案是目前最实用的CP - ABE方案。它支持任意字符串作为属性、密钥中的数值属性以及策略中的整数比较,还提供了定期密钥刷新的方法。不过,BSW和其他CP - ABE方案仍难以满足现代企业环境的需求,主要原因在于当前CP - ABE方案的密钥只能将用户属性逻辑组织为单个集合,这带来了一些限制:
1.
复合属性处理困难
:对于自然形成的复合属性,如结合传统组织角色和短期职责的属性,在现有CP - ABE方案中,只能通过将单例属性作为字符串追加来防止用户以不良方式组合属性,但这使得支持涉及构建复合属性的单例属性的其他组合的策略变得困难。
2.
数值属性赋值受限
:支持数值属性的CP - ABE方案在一个密钥中只能为给定的数值属性分配一个值,而在现实世界的许多系统中,为给定属性分配多个数值是常见的,缺乏对多值分配的支持会使策略指定变得繁琐。
为解决上述问题,提出了密文策略属性集基加密(CP - ASBE),它是CP - ABE的一种形式,通过在与用户密钥关联的属性上引入递归集结构,允许用户属性组织成递归的集合族,并制定策略来选择性地限制解密用户使用单个集合内的属性或允许他们组合多个集合的属性。
2. 动机
2.1 高效支持复合属性
现有CP - ABE方案在处理一些自然场景时存在不足,以学生课程属性为例,每个学生针对所修的每门课程都有一组属性(课程、年份、成绩)。对于“在2007年及以后修读300 ≤ 课程 < 400且成绩 > 2的学生”这一简单策略,使用CP - ABE实现具有挑战性,因为学生可能修读多门课程并获得不同成绩,策略电路需确保学生不能混合不同课程的属性来规避策略。以下是几种使用CP - ABE的可能方法,但都不现实或不尽人意:
| 方法 | 具体操作 | 缺点 |
| ---- | ---- | ---- |
| 方法一 | 为学生所修的每门课程分配一个单一的设计(布尔)属性,如cyg:373 2008 4,但设计的策略需(不切实际地)预测所有满足策略的此类属性。 | 策略需预测大量属性,不现实 |
| 方法二 | 预测学生属性可能满足的所有可能策略,并为每个策略给学生分配复合布尔属性。 | 需预测大量策略,不现实 |
| 方法三 | 为学生可能修读的课程数量设定上限,如50,为所有属性添加计数器索引,但这会使策略大小增加。 | 策略大小显著增加 |
如果策略涉及多门课程,这些方法会导致更高的效率问题或限制。而CP - ASBE可以通过为属性组在不同集合中分配多个值来克服这些问题。在上述例子中,学生为每门课程获得一组单独的属性值集合,这样学生获得的设计属性数量与自然属性数量相当,设计策略的大小也与不强制要求不同课程属性不混合的策略大小相当。
从支持的属性数据库角度来看,CP - ABE的表达能力由其能支持的数据库表查询类决定。BSW CP - ABE支持大量查询,但CP - ASBE能直接支持每个用户有多行的表,通过将每行的属性作为一个单独的集合,从而提高了表达能力。
2.2 支持多值分配
CP - ASBE的一个主要动机是支持在单个密钥中为给定属性进行多值分配。以游戏分数为例,用户多次游戏会获得多个分数值,数值属性由多个布尔属性表示。如果用户有两个分数值,如33(二进制100001)和30(二进制011110),获得这些值的布尔属性会让用户能假装拥有任何分数。CP - ASBE通过将数值属性的每个值分配表示在一个单独的集合中,每个集合包含六个布尔属性(每个位位置一个),优雅地解决了这个问题。
此外,CP - ASBE在密钥撤销方面也更高效。ABE方案和基于身份的加密(IBE)一样,缺乏有效的密钥撤销机制。在CP - ABE中,Bethencourt等人提出在用户密钥中添加过期时间属性,但实际中敏感属性的有效期需保持较短,这会导致频繁重新生成和重新分发密钥,给密钥服务器和密钥分发过程带来沉重负担。而CP - ASBE允许为过期时间属性进行多值分配,只需向现有密钥添加新的过期值,避免了频繁生成和分发新密钥,减少了对密钥服务器的负担。
下面是CP - ASBE解决问题的流程mermaid图:
graph LR
A[问题提出] --> B[复合属性处理困难]
A --> C[数值属性多值分配问题]
B --> D[CP - ASBE分配多值到不同集合]
C --> D
D --> E[解决问题]
3. 相关工作
在加密领域,有许多相关的研究和方案,这些方案为当前的研究提供了基础和参考。
3.1 传统加密方案
传统的加密方案如对称加密和非对称加密,主要关注数据的保密性和完整性。这些方案在数据传输和存储中起到了重要作用,但它们缺乏对属性和策略的灵活支持。
3.2 早期属性基加密方案
早期的属性基加密方案,如KP - ABE和CP - ABE,引入了属性和策略的概念,使得加密能够根据用户的属性和数据的策略进行更加灵活的访问控制。然而,这些方案在处理复合属性和多值分配方面存在局限性。
3.3 其他相关研究
还有一些研究关注加密方案的安全性和效率,如在通用群模型下的安全性证明,以及通过变换提高加密方案的抗选择密文攻击能力等。这些研究为改进和优化加密方案提供了重要的理论支持。
4. 预备知识
在深入了解CP - ASBE之前,需要了解一些相关的预备知识。
4.1 属性基加密基础
属性基加密(ABE)是一种基于属性的加密范式,它允许根据用户的属性和数据的策略来控制对数据的访问。在ABE中,有两种主要形式:KP - ABE和CP - ABE。
- KP - ABE :属性策略与密钥相关联,数据标注有属性,只有满足数据属性策略的密钥才能解密数据。
- CP - ABE :属性策略与数据相关联,属性与密钥相关联,只有密钥的关联属性满足数据关联策略时才能解密数据。
4.2 布尔属性和数值属性
在加密方案中,属性可以分为布尔属性和数值属性。布尔属性只有两个值(真或假),而数值属性可以有多个值。在CP - ABE和CP - ASBE中,数值属性的处理是一个重要的问题。
4.3 加密方案的安全性
加密方案的安全性是评估其有效性的重要指标。常见的安全性概念包括选择明文攻击(CPA)和选择密文攻击(CCA)。一个安全的加密方案应该能够抵抗这些攻击。
5. 方案构建与安全性
5.1 CP - ASBE方案构建
CP - ASBE方案基于BSW方案构建,通过引入递归集结构来解决CP - ABE的局限性。具体步骤如下:
1.
属性组织
:将用户属性组织成递归的集合族,每个集合内的属性可以自由组合。
2.
策略制定
:制定策略来选择性地限制解密用户使用单个集合内的属性或允许他们组合多个集合的属性。
3.
加密和解密
:在加密过程中,根据策略对数据进行加密;在解密过程中,密钥根据策略和属性集合进行解密。
5.2 安全性分析
通过在通用群模型下的证明,CP - ASBE方案在选择明文攻击下是安全的。同时,该方案可以通过类似Fujisaki - Okamoto变换或Canetti、Halevi和Katz的技术,高效地扩展到抗选择密文攻击,就像BSW方案一样。
下面是CP - ASBE方案构建的流程图:
graph LR
A[属性组织] --> B[策略制定]
B --> C[加密]
B --> D[解密]
C --> E[密文]
D --> F[明文]
6. 效率与性能
6.1 方案效率
CP - ASBE方案在处理复合属性和多值分配方面具有更高的效率。与CP - ABE相比,它减少了设计属性的数量和策略的大小,提高了加密和解密的效率。
6.2 原型实现与性能评估
通过原型实现,对CP - ASBE方案的性能进行了评估。评估结果表明,该方案在实际应用中具有较好的性能,能够满足现代企业环境的需求。
以下是CP - ASBE与CP - ABE在不同方面的性能对比表格:
| 对比项 | CP - ASBE | CP - ABE |
| ---- | ---- | ---- |
| 设计属性数量 | 少 | 多 |
| 策略大小 | 小 | 大 |
| 加密效率 | 高 | 低 |
| 解密效率 | 高 | 低 |
7. 结论与未来方向
7.1 结论
CP - ASBE方案通过引入递归集结构,有效地解决了CP - ABE在处理复合属性和多值分配方面的局限性。该方案在多个场景下具有更高的效率和表达能力,能够满足现代企业环境的需求。
7.2 未来方向
未来的研究可以从以下几个方面展开:
1.
进一步优化方案
:继续优化CP - ASBE方案的效率和安全性,提高其在实际应用中的性能。
2.
扩展应用场景
:将CP - ASBE方案应用到更多的领域,如物联网、云计算等。
3.
研究新的加密技术
:探索新的加密技术和方法,为加密方案的发展提供新的思路和方向。
超级会员免费看
43

被折叠的 条评论
为什么被折叠?



