精华内容
下载资源
问答
  • 基于属性加密
    千次阅读
    2020-08-30 19:22:41

    ABE算法先前使用在云计算场景中,和区块链存在交叉应用场景,具体问题体现在

    • 数据的异地存储、云服务器提供商的不可信、管理员能否对自身数据拥有足够的控制能力以及如何保证数据的安全有效共享都是亟需解决的问题。

    研究背景:

    • 云计算越来越普及,人们可以把照片、文档上传到云上,但由于个人数据是敏感的,因此在云上的数据会有安全问题,以此阻碍了云计算的发展。例如,云计算提供商CSP出于商业目的会监视用户数据。另外,人们若想共享加密数据。则必须向其他用户发送密码,这是非常麻烦的。即使将用户分组来简化权限管理,任然涉及到细粒度访问控制。因此密码管理是一个大问题。

    主要贡献:

    • 这篇论文的主要贡献如下,(1)本文设计了一种基于基于属性的加密(ABE)方法的LDSS-CP-ABE算法,以提供对密钥解密的高效访问控制。(其特点是将访问控制策略嵌入到密文中,也就是说访问控制策略树会被嵌入到秘钥的密文中;) (2)由于移动端的计算资源有限,文中提到使用代理服务器进行加密和解密操作,极大地减少了计算开销。 (3)引入属性的延迟重加密和描述字段,以减少处理用户撤销问题时的撤销开销。

    云计算的解决办法

    • 设计基于属性的访问控制方案,通过属性描述用户的身份,允许加密数据的主体指定其解密客体,具有较高的效率和更好的安全性。系统采用当今热门的Hadoop开源架构,实现了云环境下的存储、上传、下载等功能,该架构环境更利于进行部署与系统的实现。
    • 系统结合HDFS(Hadoop Distributed File System)技术部署于Hadoop云平台上,设计与实现了密文分享系统,主要包括密钥发布中心、用户端和Hadoop云端服务器三大功能模块。
    • 密钥发布中心负责为用户产生上传和下载文件所需的密钥,并且为了保证私钥的机密性,引入USB-KEY安全物理存储介质;
    • 用户端主要完成加密上传文件和解密下载文件(与先前的直接上传文件相比,需要将文件先进行加密再进行上传操作,文件以密文的形式存储在网络里面,因此没有秘钥的用户是无法看到文件里面的内容),同时具备了更新系统参数、制定访问规则以及用户申请私钥等功能
    • Hadoop云端服务器提供了文件存储和文件树访问等功能。
    • 系统采用CPABE加密方案的机制,系统还具备了防窃取、抗共谋攻击和抗木马攻击等安全性,且该系统还具有灵活性强、效率高和细粒度的访问控制的特点。

    2.系统设计

    系统整体框架

     

    系统设计:

    • 系统设计由6部分组成,(1)数据所有者(DO):DO将数据上传到移动云并与朋友共享。 DO确定访问控制策略。 (2)数据用户(DU):DU从移动云中检索数据。 (3)信任机构(TA):TA负责生成和分发属性密钥。 (4)加密服务提供商(ESP):ESP为DO提供数据加密操作。 (5)解密服务提供商(DSP):DSP为DU提供数据解密操作。 (6)云服务提供商(CSP):CSP存储DO的数据。 它忠实地执行DO请求的操作,同时可以查看DO存储在云中的数据。
    • 论文对场景的假设是CSP、DSP、ESP三个服务器均为半可信的,也就是说他们不会恶意破坏用户数据,但是他们可能会偷看用户数据。TA表示安全可信服务器。

     图一

    流程

    • DO将数据发送到云。由于云不可信,因此必须在上传数据之前对数据进行加密。 DO以数据文件的访问控制树的形式定义访问控制策略,以指定DU在访问某个数据文件时应获取的属性。在LDSS中,数据文件使用对称加密机制加密,数据加密的对称密钥也使用基于属性的加密(ABE)加密。访问控制策略嵌入在对称密钥的密文中。只有获得满足访问控制策略的属性密钥的DU才能解密密文并检索对称密钥。由于加密和解密都是计算密集型的,因此对移动用户来说是一个沉重的负担。为了减轻客户端移动设备上的开销,使用加密服务提供商(ESP)和解密服务提供商(DSP)。加密服务提供商和解密服务提供商都是半信任的。论文修改了传统的CP-ABE算法并设计LDSS-CP-ABE算法,以确保在将计算任务外包给ESP和DSP时的数据隐私。

    相关知识

    • 双线性映射
    • shamir密钥共享方案
    • 访问控制树(x_i,y_i)
    • 参考链接

    现实使用的进一步优化

    问题

    • 在属性加密方案(ABE)中,由于群中的配对操作计算开销很大,所以一般来说在实际系统中会占据大量计算资源,而且会很慢甚至成为系统瓶颈

    优化策略

    • 第一种是利用离线计算的方式,如果有一个移动设备上部署了ABE系统,那么在这个移动设备充电或者待机的时候(即离线时),系统在知道要加密的消息之前就自动完成Setup,生成密钥,加密这几个步骤,生成中间密文,当真正知道加密消息需要加密的时候,通过少量计算将中间密文转换成密文即可,这样在用户使用的感受上来看,ABE系统的加密效率是可以接受的。但是从总的计算开销上来看,该方案的计算开销有所增加,主要是增加了一个转换开销,以及在解密时至少多增加一个配对操作以及其他的求幂等。
    • 第二种是利用外包的方式将计算开销大的算法外包给代理,其中涉及到两个代理,允许加密者将加密策略的创建外包给代理(代理A),并根据给定的策略为用户加密消息,同时代理满足以下两个要求:(a)无法知道加密的消息(b)强制执行根据策略指定的属性来加密消息。通过允许代理根据用户的转换密钥属性验证策略,从而允许用户将策略验证外包给另一个半信任代理(代理 B),从而减少了解密工作负载。
    • 第三种是离线计算和外包融合的方案
    • 第一个方案主要减少开销的是在生成密钥以及加密时,第二个方案中主要减少的是加密以及解密的开销

    参考链接

    更多相关内容
  • 基于属性加密( ABE )Sahai A, Waters B. Fuzzy identity-based encryption[C]// Eurocrypt. 2005, 3494: 457-473.Goyal V, Pandey O, Sahai A, et al. Attribute-based encryption for fine-grained access ...
  • #资源达人分享计划#
  • 基于密文策略的属性加密体制(CP- ABE)算法在其解密过程中采取了拉格朗日多项式插值法来恢复节点的属性值.通过分析发现,随着节点增多存在计算多次重复的缺点.为了提高它的解密性能,基于该CP- ABE算法本身的访问树...
  • 此为属性加密技术相关调研报告,大学作业。主要介绍了目前属性加密的部分背景技术。
  • 一种基于属性的加密方法的实现,CPABE属性加密源码,由JAVA实现
  • 基于属性加密的私有数据分层访问控制方案
  • 基于属性加密的共享文件分级访问控制方案
  • 针对目前基于区块链的溯源算法主要通过同态加密及零知识证明进行隐私保护,使溯源信息难于实现动态共享这一问题,提出基于属性加密的区块链数据溯源算法。为实现交易隐私的动态保护,基于 Waters 所提CP-ABE方案设计...
  • 为降低密文策略基于属性加密(CP-ABE, ciphertext-policy attribute-based encryption)体制中私钥泄漏带来的损害,首先给出了前向安全CP-ABE体制的形式化定义和安全模型,然后构造了一个前向安全的CP-ABE方案。...
  • 1.公钥加密体制: 与对称密码体制相比,公钥密码体制加密密钥(公钥)和解密密钥(私钥)是不一样的,加密密钥是可以公开的,并且不会危及密码算法的安全性。其过程可以简单的表示如下图所示: ...2.基于身份的加密.

    1.公钥加密体制:

    与对称密码体制相比,公钥密码体制加密密钥(公钥)和解密密钥(私钥)是不一样的,加密密钥是可以公开的,并且不会危及密码算法的安全性。其过程可以简单的表示如下图所示:

    如上图所示,其步骤如下所示:

    • Bob拥有密钥对K1与K2,一个密钥(K1)用于封箱,另一个密钥(K2)用于开锁;
    • Bob可以将锁与钥匙K1发给任何人(如Alice),使其可以安全地向Bob发消息。
    • Bob 请求发送方(如Alice)用这个锁与钥匙K1封锁内容;
    • 然后Bob可以用密钥K2开锁。

    2.基于身份的加密:

    公钥加密体制虽然具有很好的安全性,但是存在一个最大的问题就是,每个人的公钥都是无意义的一串类似随机数的字符串,如果在加密过程中公钥使用错误,密文就不能被正确的接收者所解密。同时,这很可能就将信息透露给了错误的用户,甚至透露给恶意用户。现实生活中确实存在这样的攻击方法:恶意用户欺骗加密者,将接收者的公钥替换为自己的公钥并告知加密者。

    解决这个方法是引入了一个可信的第三方。第三方维护一个大的表格,表格中存放各个用户的身份,以及其所对应的公钥信息。加密者可以在加密之前首先向可信第三方进行公钥查询,这就可以正确进行加密了。这种解决方法虽然好,但是也有一个问题:当用户数量过多,这个表格的维护就变得很困难。

    所以在1984年,Shamir提出了身份基密码体制的思想(Identity-Based Cryptosystem),该方案基于公钥密码系统,但有一个变化:用户选择他的名字和网络地址(也可以使用姓名、社会保险号、街道地址、办公室号码或电话号码的任意组合,前提是它能唯一标识用户)作为他的公钥,而不是生成一对随机的公钥和私钥,并发布这些密钥中的一个。

    基于身份的方案类似于理想的邮件系统:如果知道某人的姓名和地址,就可以向他发送只有他能阅读的消息,并且可以验证只有他才能提供的签名。其步骤简括如下:

    • 当用户A想要向用户B发送消息时,A使用智能卡中的密钥对消息进行签名,使用B的姓名和网络地址对结果进行加密;
    • A将自己的姓名和网络地址添加到消息中,然后将消息发送给B;
    • 当B收到消息是,他使用智能卡中的密钥对消息进行解密;
    • 然后使用发送者的姓名和网络地址作为验证密钥来验证签名。

    3.基于属性的加密:

    2006年,Goyal V, Pandey A, Sahai A, Waters B在the 13th ACM Conf. on Computer and Communications Security会议上提出了基于属性加密的概念, Sahai A, Waters B提出了第一个基于属性加密方案。其概念如下图所示:

    数据拥有者需要制定一条仅有这n个用户才能满足的访问策略,接着输入公共参数PP、该条策略以及明文文件至ABE加密算法,进行加密一次,形成唯一一份密文。得到密文后,数据拥有者将该份密文分别发送给n个不同的用户。

    ABE的思想源于基于身份的加密,ABE的基本方案有两个,分别如下:

    3.1 KP-ABE方案

     KP-ABE(Key Policy Attribute-based Encryption,基于密钥策略的属性加密)方案是将策略嵌入到密钥中,属性嵌入到密文中,包含一下四个算法:

    • Setup(\gamma ,U):以安全参数\gamma和属性全集U作为输入,初始化系统并生成系统公共参数pk及主密钥mk;
    • KeyGen(pk,mk,T):以系统公共参数pk、主密钥mk以及用户的访问策略T为输入,输出与T对应的用户私钥SK_{T}
    • Encrypt(pk, w,m):以系统公共参数pk、属性集合w以及明文m为输入,输出密文CT_{w}
    • Decrypt(pk,SK_{T},CT_{w}):以系统公共参数pk、用户私钥SK_{T}及密文CT_{w}为输入,当且仅当CT_{w}对应的属性集合w满足SK_{T}对应的访问控制策略T时,算法输出明文m。 

    3.2 CP-ABE 

     CP-ABE(Ciphertext Policy Attribute-based Encryption,基于密文策略的属性加密)方案和KP-ABE方案相似是将策略嵌入到密文中,属性嵌入到密钥中,包含一下四个算法:

    • Setup(\gamma ,U):以安全参数\gamma和属性全集U作为输入,输出系统公共参数pk及主密钥mk;
    • KeyGen(pk,mk,w):输入系统公共参数pk、主密钥mk以及用户属性集合w,输出与w对应的用户私钥SK_{w}
    • Encrypt(pk, T,m):以系统公共参数pk、访问控制策略T以及明文m为输入,输出密文CT_{T}
    • Decrypt(pk,SK_{w},CT_{T}):以系统公共参数pk、用户私钥SK_{w}及密文CT_{T}为输入,当且仅当SK_{w}对应的属性集合w满足CT_{T}对应的访问控制策略T时,输出明文m。
    展开全文
  • 但现有的基于属性加密体制的算法效率较低,难以在实际环境中应用。分析了基于属性的加密体制的两种类型及其应用场景,提出一个基于属性加密体制算法的加速方案。通过实验表明,提出的方案可提高基于属性加密体制的...
  • Java本科毕业设计基于属性加密和联盟区块链的安全车联网数字取证系统源码。Java本科毕业设计基于属性加密和联盟区块链的安全车联网数字取证系统源码。Java本科毕业设计基于属性加密和联盟区块链的安全车联网数字取证...
  • cpabe JAVA代码,Java Pairing Based Cryptography Library(jPBC) 1.2.1
  • 针对基于属性加密(ABE,attribute-base encryption)机制存在的密钥滥用问题,为每个用户增加唯一的身份标识符,将联合安全编码和叛徒追踪机制引入到ABE方案中,给出适应性安全的可追踪叛徒ABE的定义、安全模型和可...
  • 云计算-基于属性加密的云计算安全研究.pdf
  • 云计算-基于属性加密的云计算访问控制技术.pdf
  • 提出的基于属性加密的隐藏证书扩展模型通过引入属性集合证书技术、基于加解密精度阈值等特性,解决了上述三个问题。在分析国内外相关研究进展的基础上,对扩展模型在体系架构、系统构造、双方信任协商协议、多方信任...
  • 云计算-云计算环境下基于属性加密的访问控制研究.pdf
  • 云计算-云计算环境下基于属性加密的访问控制方案研究.pdf
  • 以典型的云存储体系结构为研究对象,从数据拥有者、云服务器、授权机构、用户以及...针对上述问题,研究了当前基于属性加密的云存储系统隐私保护机制,并讨论了其中存在的不足、可能的解决方案以及未来可能的研究方向。
  • 基于属性加密的位置分层访问控制方案
  • 提出了一个支持有效用户撤销的多授权方基于属性加密方案,每个用户都拥有一个“混合解密密钥”用于实现有效的用户撤销。与现有的方案相比,该方案在进行用户撤销时更加有效。除此以外,该方案还能实现用户的动态权限...
  • 已有基于属性加密的访问控制研究多是基于单授权中心来实现,该种方案在授权方不可信或遭受恶意攻击的情况下可能会造成密钥泄露。提出一种基于属性加密的多授权中心访问控制模型PRM-CSAC。基于CP-ABE方法,设计多授权...
  • 一种支持快速加密的基于属性加密方案.pdf
  • 基于属性加密方案(CP-ABE,KP-ABE)

    万次阅读 多人点赞 2020-03-10 21:35:27
    如果数据所有者将数据使用自己的秘钥加密后在链上存证后,能实现数据的隐私保护,但是不能安全的共享给他人。 比如在金融领域,数据上链可以提高数据本身的安全性,也有利于监管机构从区块链中...

    欢迎关注公众号:区块链之美

    致力于区块链技术研究,传播区块链技术和解决方案、区块链应用落地、区块链行业动态等。

     

    1.背景

    区块链典型的一个应用场景是资源共享,而在实际应用中,很多参与者的数据很涉及机密,数据所有者并不乐意把自己的数据公开出来。数据明文在链上存证后,虽然共享给其他人,但是数据被所有的人都能查看,不存在一点私密性。如果数据所有者将数据使用自己的秘钥加密后在链上存证后,能实现数据的隐私保护,但是不能安全的共享给他人。

    比如在金融领域,数据上链可以提高数据本身的安全性,也有利于监管机构从区块链中调取数据进行监管,但是为什么金融领域的区块链应用迟迟推进不下去呢?一个亟待解决的重要问题是,金融公司本身不愿意将数据存在链上。因为这些数据都是相当敏感且重要的,一旦数据外泄,会带来不小的损失。

    2.基于属性的加密技术

    2.1相关概念

    2.1.1属性

    在ABE中,属性也有着相似的作用。举个例子,JackyLi是A大学信息安全学院的教授,那么“A大学”,“信息安全学院”以及“教授”就是ABE中刻画JackyLi这个人的多个属性,这些属性可以构成一个属性集合,我们可以把它记为集合C_Jacky_Li。

    2.1.2策略

    一种简单的理解是策略实际即是由属性及它们间关系所组成的一个逻辑表达式。例如下式Policy:

    参与X课题or(信息安全学院andA大学and教授)

    这是一条简单的策略,其表达的含义是唯有X课题组的成员或是A大学信息安全学院的教授才能满足其要求。

    2.1.3属性集合与策略匹配

    使用C_Jacky_Li与Policy1进行说明。C_Jacky_Li集合中没有“参与X课题”这一属性,故其无法满足策略的前半部分;而策略的后半部分,要求“信息安全学院”、“A大学”、“教授”这三个属性同时出现,而C_Jacky_Li同时包含了这三个属性,所以属性集合匹配策略后半部分,由于策略前后两部分是or的关系,故属性集合C_Jacky_Li能够满足策略Policy1,我们称之为属性集合与策略匹配成功。

    倘若此时另一个用户Johnson,他的属性集合是C_Johnson={计算机学院,A大学,教授},显然C_Johnson无法满足Policy1,此时属性集合与策略匹配失败。

    2.4 ABE

    一种基于属性加密技术(Attribute-Based Encryption,ABE),通过合理的配置共享策略,即可解决上述私密数据共享问题。根据嵌入的对象不同,ABE可划分为KP-ABE、CP-ABE。

    以CP-ABE为例,举一个简单的例子说明ABE相较传统公钥加密算法的优势。

    一个数据拥有者需要将一份明文文件,加密发送给N个不同的用户,倘若使用传统公钥加密算法,数据拥有者需要首先保存这N个用户的公钥(不考虑公钥证书的情况下),利用这N个不同公钥,使用该份明文文件,加密N次,形成N份不同的密文,分别发送给这个N个用户。PK:Public Key,公钥;CT:Cipher Text,密文。

    若使用ABE来完成这项任务则会轻松很多。此时,数据拥有者只需要制定一条仅有这N个用户才能满足的访问策略,接着输入公共参数PP、该条策略以及明文文件至ABE加密算法,进行加密一次,形成唯一一份密文。得到密文后,数据拥有者将该份密文分别发送给这N个不同用户。

    从加密计算开销与存储开销的角度来看,ABE在该场景下(数据加密共享场景)相较于传统公钥加密算法,有着肉眼可见的性能优势。

    2.4.1 KP-ABE

    KP-ABE(基于密钥策略的属性加密,Key-Policy ABE,KP-ABE)是将策略嵌入到用户密钥中,属性嵌入到密文中。密钥对应于一个访问结构而密文对应于一个属性集合,解密当且仅当属性集合中的属性能够满足此访问策略。这种设计比较接近静态场景,此时密文用与其相关的属性加密存放在服务器上,当允许用户得到某些消息时,就分配一个特定的访问策略给用户,其应用场景则更加偏向于付费视频网站、日志加密管理等等。如果用户想解密多个文件,那么他必须拥有多个可以满足匹配的秘钥,否则不能解密多个文件。

    2.4.2 CP-ABE

    CP-ABE(基于密文策略的属性加密,Ciphertext-Policy ABE,CP-ABE)是将策略嵌入到密文中,属性嵌入到用户密钥中。密文对应于一个访问结构而密钥对应于一个属性集合,解密当且仅当属性集合中的属性能够满足此访问结构。

    CP-ABE基于属性的加密运用密码机制保护数据,由数据拥有者规定访问密文的策略,将属性集合与访问资源相关联,数据使用者可以根据自己的授权属性的访问密文信息,该技术适合隐私数据共享等访问类应用。

    CP-ABE由于策略嵌入密文中,这就意味着数据拥有者可以通过设定策略去决定拥有哪些属性的人能够访问这份密文,也就相当于对这份数据做了一个粒度可以细化到属性级别的加密访问控制,CP-ABE的应用场景一般是公有云上的数据加密存储与细粒度共享。

    2.3 KP-ABE与CP-ABE比较

    比较项

    CP-ABE

    KP-ABE

    策略相关

    密文

    秘钥

    属性集合相关

    秘钥

    密文

    数据拥有者是否有权决定数据能被谁访问

    属性集合中属性来源

    用户属性

    数据/文件属性

    适用场景

    云环境/区块链数据加密共享

    日志管理、付费视频网站

    2.支持用户属性可撤销和恢复的CP-ABE算法实现步骤

    CP-ABE主要由7个步骤组成,前两步均在证书颁发中心(CA)执行,并存储PK\MK\UK:

    1. 初始化Setup:初始化算法为随机化算法,初始化仅生成系统公钥PK、系统主秘钥MSK。
    2. 撤销机构初始化:输入参数为PK,生成一个素数域P,为每个属性att计算list=1。算法输出初始化的P,map<userGID,prime>及map<att,list>,list并不是我们常见的list,而是一个大数,且为素数,用来记录是否被撤销。
    3. 秘钥生成KeyGen:可信授权中心根据PK、MK和数据请求者提交的属性集合S,为数据请求者生成与属性集合关联的用户秘钥UK。在素数域中为用户申请一个素数prime,从P中删除这个prime,保证不同用户获取的prime不一样,然后素数存入映射表map<userGID,prime>中。
    4. 加密Encrypt:加密算法(随机化算法)输入参数为PK、待加密消息M、访问策略关联的访问控制结构,输出基于属性加密的密文。
    5. 解密Decrypt:解密为确定化算法,由数据请求者执行。解密分为两个步骤,第一步:访问策略树的叶子节点,令i=att(x),x表示密文策略访问树的叶子节点,(函数att(x)返回节点x所对应的属性),如果i∈S,算法获取该属性对应的撤销列表list并取模list%prime。若值不为0,表明该用户未被撤销,若为0,表示已被撤销,解密结束;第二步:当第一步验证通过后,算法输入UK、密文M,如果属性集合满足访问策略,算法可成功解密密文M。
    6. 用户属性撤销:算法输入参数为属性att,属性对应的撤销列表list、用户user及用户对应的素数prime。当用户user被撤销属性att时,DO分别从映射表map<user,prime>和map<att,list>取出用户对应的素数prime及属性对应的撤销列表list,并计算list'=list×prime。属性att对应的撤销列表更新为list'。
    7. 用户属性恢复:算法输入参数为属性att,属性对应的撤销列表list、用户user及用户对应的素数prime。用户被撤销可能是暂时的,当用户user重新拥有属性att时,DO分别从映射表map<user,prime>和map<att,list>取出用户对应的素数prime及属性对应的撤销列表list,并计算list'=list÷prime。属性att对应的撤销列表更新为list'。

    2.1用户和秘钥管理

    2.1.1用户管理

    用户拥有的基本信息(最小数据集合):GID(CA提供或业务方提供,但要保证全局唯一性)、CP-ABE用户属性(业务方提供)、唯一素数(CA用户注册单元提供)、私钥(CA用户私钥生成单元产生)。

    用户提交信息(GID、CP-ABE用户属性、唯一素数)到CA,申请注册和生成用户私钥,用户私钥存在CA中,CA提供接口查询用户和用户私钥获取。

    2.1.2策略更改

    在实际工程应用中,撤销方案尽量选择复杂度低、计算开销小、实现简单的方案。因此,本设计中采用的策略撤销方案:通过固定长度的撤销列表记录撤销用户,撤销过程不必更新系统及相关用户的秘钥,可大大降低撤销所引起的计算开销。

    2.1.3撤销

    用户属性撤销:算法输入参数为属性att,属性对应的撤销列表list、用户user及用户对应的素数prime。当用户user被撤销属性att时,DO分别从映射表map<user,prime>和map<att,list>取出用户对应的素数prime及属性对应的撤销列表list,并计算list'=list×prime。属性att对应的撤销列表更新为list'。

    2.1.4恢复

    用户属性恢复:算法输入参数为属性att,属性对应的撤销列表list、用户user及用户对应的素数prime。用户被撤销可能是暂时的,当用户user重新拥有属性att时,DO分别从映射表map<user,prime>和map<att,list>取出用户对应的素数prime及属性对应的撤销列表list,并计算list'=list÷prime。属性att对应的撤销列表更新为list'。

    3.安全性分析

    已有大量学者对其研究证明是安全的,此处安全分析略。

    4.方案优势

    1. 实现了加密数据的细粒度访问控制,即数据拥有者可以指定谁可以访问加密的数据,数据拥有者对数据具有完全的控制权。例如,金融公司自身可以控制谁能对数据进行访问,只需要把数据访问的权限交给监管机构和与之有数据合作的伙伴即可。
    2. CP-ABE不需要像其它加密方式那样,如非对称加密,每次加密都必须知道接收者的身份信息且发送给多个用户时必须加密多次,CP-ABE只需要设置访问策略仅执行一次加密,当用户拥有的属性符合加密者所描述的策略时,数据使用者就可以解密。
    3. 可解决对称加密密钥传输带来的密钥泄露的问题,保护了数据拥有者信息,也保护了数据使用者信息。

    5.潜在的应用场景

    区块链技术与开放银行的构建

    6.CP-ABE算法Java实现

    可参考以下两个开源项目实现,但是不包括访问策略更改,这一点需要自己实现。

    1. https://github.com/stefano81/dcpabe
    2. https://github.com/TU-Berlin-SNET/jTR-ABE

    展开全文
  • 基于属性加密的二维码分级加密算法
  • 一种基于属性加密的细粒度云访问控制方案
  • 密文策略基于属性加密(CP-ABE)的一些认识

    千次阅读 多人点赞 2020-06-28 23:10:18
    1. 公钥加密体制 在1976年,Whitfield Diffie和Martin Hellman发表了《New directions in cryptography》奠定了公钥密码系统的基础。和对称密码体制不同,公钥密码体制加密密匙和解密密匙是不一样的,加密密匙是...

    1. 公钥加密体制

    在1976年,Whitfield Diffie和Martin Hellman发表了《New directions in cryptography》奠定了公钥密码系统的基础。和对称密码体制不同,公钥密码体制加密密匙和解密密匙是不一样的,加密密匙是可以公开的,并且不会危及密码算法的安全性。自从公钥密码的概念被提出以来,相继提出了许多公钥密码方案,如RSA、ElGamal等。

    1.A要向B发送信息,A和B都要产生一对用于加密和解密的公钥和私钥。

    2.A的私钥保密,A的公钥告诉B;B的私钥保密,B的公钥告诉A。

    3.A要给B发送信息时,A用B的公钥加密信息,因为A知道B的公钥。

    4.A将这个消息发给B(已经用B的公钥加密消息)。

    5.B收到这个消息后,B用自己的私钥解密A的消息。其他所有收到这个报文的人都无法解密,因为只有B才有B的私钥。

    公钥加密体制一个典型的特点是存在着PKI,加密者Alice在PKI查询到Bob的公钥,即可用Bob的公钥来进行加密,将密文发送给Bob之后,Bob能用自己的私钥解密密文,得到明文数据。

     

    随后,Shamir提出了一种基于身份的加密(identity-based encryption,IBE)方案。首先假设存在一个可信的密钥生成服务器;用户选择他的名字(或者是,网络地址,所在街道地址门牌号,电话号码)作为公钥,相应的私钥由KGG计算出来分配给每个加入网络中的用户。IBE有点类似于理想的邮件系统:如果你知道某个人的姓名和地址,你可以发给他只有他才能读的信,你可以认证他签的签名。

    到了2006年,Goyal V, Pandey A, Sahai A, Waters B在the 13th ACM Conf. on Computer and Communications Security会议上提出了基于属性加密的概念,Bethencourt J, Sahai A, Waters B提出了第一个基于属性加密方案。

    在基于属性加密中,Alice使用如图所示的访问控制策略采用shamir秘密值分大产生密文,密文中暗含了访问控制策略,因此能够限制用户的访问,达到“一次加密,多人共享”的目的。如图,Alice加密之后,Bob和ALex能够解密到密文数据,而Alan不能,因为Alan的属性“数学学院”不满足左子树“AND”的要求。如何来使用shamir秘密值分发呢?

    2.属性基加密秘密分发

    如下图所示,在进行秘密值分发之前,加密者先随机选择秘密值s(以s=5)为例,然后,先从根节点构造多项式f(x)=ax^(n-1)+bx^(n-2)...+c,其中n表示的为(t,n)门限的的t-1。如果为"AND"门,取值为其子树的数目-1,"OR"结构取值为1即可,常数项c设置为秘密值s。从左到右依次编号,带入1,2,3...来进行秘密值分发,如8=5+3*1,11=5+3*2....第一层分发完成之后进入第二层进行秘密值分发,按照此规律完成加密过程。

    3.基于属性加密过程

    3.1.初始化

    3.2.加密

    用秘密值分发得到的子秘密值qy(0)进行加密即可得到密文CT,其中H(att(y))值将属性att(y)映射到G域。

    3.3.私钥生成

    授权机构会根据用户属性,产生相对应的属性密钥,用于解密

    3.4.解密

    解密分成两部分,先解密叶子节点:

    再进行拉格朗日插值

    进而进行最终解密得到秘密值s

    4.应用

    密文策略基于属性加密可以在如云环境,医院,政府,智慧工厂等多个场合得到应用。

    展开全文
  • 基于属性加密的数据访问控制模型.pdf

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 116,327
精华内容 46,530
关键字:

基于属性加密

友情链接: Corner Blind.rar