《基于属性加密的云存储访问控制研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
密级:学校代码:10075分类号:学号:20121331工学硕士学位论文基于属性加密的云存储访问控制研究学位申请人:朱献超指导教师:刘振鹏教授学位类别:工学硕士学科专业:通信与信息系统授予单位:河北大学答辩日期:二O一五年五月 ClassifiedIndex:CODE:10075U.D.C:NO:20121331ADissertationfortheDegreeofM.EngineeringStudyonAttributebasedEncryptionofCloudStorageCandidate:ZhuXianchaoSupervisor:Prof.LiuZhenpengSpecialty:MasterofEngineeringAcademicDegreeAppliedfor:Comm.&Info.SystemUniversity:HebeiUniversityDateofOralExamination:May,2015 摘要摘要在信息化快速发展的今天,互联网技术不断创新,人们提出一种新的互联网服务即云计算。云计算目的是解决互联网上日益增加的信息量,据有关调查显示互联网上的信息量以指数级的速度快速增长。在面对如此巨大信息量时,数据应该以更好的方式进行存储。人们在云计算的基础上提出了一种新的云服务即云存储,其中云存储中的存储设备是互联网上通过软件联合在一起的装置,为用户提供一种按需存储的服务。云存储在为用户或者企业节省大量成本的同时,数据的安全性逐渐成为了人们关注的焦点。由于云存储服务提供商不完全可信,所以人们希望通过加密技术和访问控制技术等来保障数据的安全。由于传统的访问控制没有基于属性的访问控制灵活,而传统的对称加密体制在分发密钥时非常困难,非对称加密体制又需要存储多个密文副本,都不适用于云存储服务。基于属性加密体制与访问控制相结合共同为云存储提供访问控制的方案成为云存储安全研究的热点。云存储访问控制方案中主要使用到的加密方法是密文策略的基于属性加密(CP-ABE)。在早期的方案中,由于云存储访问控制系统只有单个的授权中心用于管理属性,这样使得授权中心成为保障数据安全的瓶颈。为了增加数据安全性,有专家提出一种多授权中心的CP-ABE方案,然而该方案在属性撤销时,需要将所有的用户密钥进行更新,增加了系统的计算开销。通过在授权中心加入属性撤销列表完成用户属性分时撤销,再结合代理重加密技术和解密外包技术,实现了在满足前向安全和后向安全的基础上的有效的细粒度的属性撤销,同时降低了属性撤销时授权中心的计算开销。关键词云存储多授权中心代理重加密解密外包属性分时撤销I AbstractAbstractWiththerapiddevelopmentofinformationandInternettechnology,anewInternetservicecalled“cloudcomputing”isputforward,thepurposeofwhichistotosolvetheincreasingamountofInternetinformation.Accordingtothesurvey,theamountofinformationontheInternetincreasesexponentially,andinthiscontext,thedatashouldbestoredinabetterway.Basedonthecloudcomputing,anewcloudservice(i.e.cloudstorage)isproposedtoprovideuserswithanon-demandservicesforstorage,thestoragedeviceofwhichisassociatedbysomesoftwareontheInternet.Whilethecloudstorageproduceslargecostsavingsforusersandbusiness,datasecurityincreasinglybecomesthefocusofattention.Becauseserviceprovidersofcloudstorageisnotcompletelycredible,peoplewanttoprotectthesecurityofdatabyencryptionandaccesscontroltechnology.Asthetraditionalaccesscontrolisnotasflexibleastheaccesscontrolbasedonattribute,thetraditionalsymmetricencryptionsystemisverydifficultinthedistributionofkey,andtheasymmetricencryptionsystemneedstostoremultiplecopiesoftheciphertext,cloudstoragebasedonattributeencryptionsystemandaccesscontrolhasbecomeahotspotofresearchoncloudstoragesecurity.Theaccesscontrolschemeofcloudstorageismainlybasedonciphertextpolicyattributebasedencryption(CP-ABE).Theearlyaccesscontrolsystemofcloudstorageonlyhaveasingleauthorityandthismakestheauthorityabottleneckofdatasecurity.Inordertoincreasethedatasecurity,someexpertsproposeamultiauthorityCP-ABEscheme,butwhenattributeiscancelled,theschemeneedstoupdateallcustomercodes,whichincreasesthecomputationalcostofthesystem.Byaddingattributerevocationlisttoauthorityandcombiningre-encryptiontechnologywithdecryptionoutsourcingtechnology,aneffectiveattribute-revocationbasedonforwardandbackwardsecurityisachieved,whichreducesthecomputationaloverheadofauthorityasattributeiscancelled.Keywordscloudstoragemulti-authorityproxyre-encryptiondecryptionoutsourcingtime-sharingattributerevocationII 目录目录第1章绪论···························································································11.1选题背景及意义···················································································11.2国内外研究概况和发展趋势····································································31.3本文的相关研究工作·············································································51.4本文的组织结构···················································································6第2章相关理论基础··················································································72.1访问控制概述······················································································72.1.1传统访问控制·················································································72.1.2基于属性的访问控制(ABAC)·························································82.2基于属性加密体制(ABE)··································································112.2.1CP-ABE························································································112.2.2KP-ABE·······················································································112.3访问结构···························································································122.3.1门限共享方案···············································································122.3.2线性分享矩阵LSSS········································································122.4云环境下的访问控制DACC··································································152.5可证明安全性·····················································································182.6本章小结···························································································19第3章基于属性加密算法的改进和访问控制方案············································203.1引言·································································································203.1.1安全假设·····················································································203.1.2判定性q-BDHE假设······································································203.2改进型基于属性加密算法·····································································213.2.1初始化算法··················································································213.2.2公钥生成算法···············································································213.2.3加密算法······················································································22III 目录3.2.4私钥生成算法················································································223.2.5解密算法······················································································223.2.6属性撤销方案················································································233.3云存储访问控制方案···········································································243.3.1方案描述······················································································243.3.2访问控制过程················································································263.4本章小结···························································································29第4章理论分析和性能分析········································································304.1模型的安全性分析··············································································304.1.1安全证明·····················································································304.1.2抗共谋性分析···············································································324.2模型的性能分析·················································································334.2.1基于属性加密方案的开销································································334.2.2基于属性加密方案的存储开销··························································354.3实验对比···························································································364.4本章小结···························································································38第5章总结与展望····················································································395.1总结·································································································395.2展望·································································································40参考文献···································································································41致谢···································································································44攻读学位期间取得的科研成果········································································45IV 第1章绪论第1章绪论本章主要介绍了目前信息技术领域的关注度比较高的课题,即云计算技术以及云存储技术,并指出了云存储服务在实际应用中面临的安全问题。然后介绍了在云存储环境下数据访问控制方向的研究热点,以及基于属性加密应用于云存储的访问控制的研究背景。通过对已经提出的云存储访问控制方案中尚待解决的问题阐述,提出本课题的研究内容。1.1选题背景及意义在互联网快速发展的今天,互联网上的信息量正以指数级的速率增长,面对如此海量的数据现代的计算处理方式已经捉襟见肘。作为一种极具发展前景的技术,云计算倍受各界关注[1]-[5]。云计算隐含了一种重大的变革,即在信息的存储和处理上的变化。运行的程序和数据是托管到“云”上的而不是个人计算机上,其中的“云”是电脑和服务器的一种模糊的组合并且通过互联网访问。云计算是在虚拟化技术、并行计算技术、分布式计算技术等基础上整合而来的一种的技术,它具有按需自助服务、广泛的网络接入等特点[6]。这种技术在当今社会产生巨大影响,因为它提供软件、计算、存储、数据访问等服务而不需要终端用户知道物理位置以及提供用户服务的系统配置,帮助客户摆脱海量数据处理的难题。越来越多的个人掌上电子设备(例如:智能手机等)构成了我们的普适计算环境。这些设备由于自身的存储空间和计算能力的局限性,所以在数据存储和数据分享等方面存在非常大的困难。由于云存储可以提供近似于无限的存储空间,而且可以很好的满足普适计算的要求,所以云存储逐渐引起人们的关注[7]-[9]。尽管云计算已经被业界广泛采用,但是云计算的研究依旧不够成熟。云计算具有一部分尚未解决的难题,而且在实际应用中还不断出现一些新挑战。云安全是计算机网路安全或信息安全的一个分支,并且在云计算验收中扮演重要角色。很多安全威胁来自云计算提供商/用户的内部或外部,根据这种情况分为外部威胁和内部攻击[10]。安全威胁还包括数据丢失,失控,服务中断等。外部威胁主要来自不同的人和机构,例如无法直接访问云的黑客。内部攻击主要发生在组织成员中,例如现任或前任雇员等。由于云服务提供商可能出于商业利益对云中的数据进行修改或窃取,这样就增加了用户在数据安1 河北大学工学硕士学位论文全方面的焦虑。云服务提供商为了确保数据的安全会对数据进行加密,而且只有获得授权的用户才能访问全部数据[11]。但是还会有一些安全问题像钓鱼攻击,僵尸网络,数据丢失等都会对数据和软件产生严重威胁。面对如此多的安全威胁[12],有学者提出了通过访问控制对云存储中的数据进行保护的研究课题。由于将服务外包给一个远程服务器,云计算的用户更关心其机密性和隐私性。一方面,用户应该在进行任何业务之前必须验证自己,另一方面,它必须确保云中的数据不会被篡改。同样需要确保用户的隐私性,以便其他用户不知道该用户的身份[13]。云访问控制正在吸引人们的关注,因为它重要的一点是只有经过授权的用户才能有效的访问服务。云中存储着大量的信息,而且大部分是敏感信息。应该确保例如健康情况,重要文件(如谷歌Dropbox)或个人信息(如社交网络)等敏感信息的访问控制。主要存在三种类型的访问控制:基于用户访问控制(UBAC),基于角色的访问控制(RBAC),和基于属性的访问控制(ABAC)[14]。在基于用户访问控制(UBAC),访问控制列表(ACL)中包含有那些授权访问数据的用户列表[15]。对于像含有许多用户的云,这是不适用的。在基于角色的访问控制(RBAC)中,用户根据各自的角色进行分类,用户可以通过匹配角色来访问数据。其中,角色由系统定义。例如,学校中一些文件只有老师可以访问,而学生无权访问。在基于属性访问控制(ABAC)中,给用户分配属性,以及让数据关联访问策略,只有当用户的属性集合满足访问策略时才能访问数据[16]。例如,在上面的例子中,某些文件只有语文老师可以访问,而数学老师无权访问。基于属性访问控制(ABAC)方式比基于角色的访问控制(RBAC)更灵活,因为它不需要为主体属性集合设置不同的角色和规则,并且能够快速适应不断变化的需求。这种灵活性必须考虑复杂性的情况,假如有N个布尔属性作为属性条件,那么一共会有2N个可能的组合。属性的认证可以由一些机构构建,而这些机构可以发放一些特征属性,例如一个企业可以担保主体的就业状况[17]。基于属性加密访问控制(ABAC)虽然具有灵活性和易扩展性等特点,但是作为基于属性访问控制(ABAC)的一种应用形式中密文策略的基于属性加密算法(CP-ABE)具有属性撤销(权限撤销)时计算开销大和存储开销大等缺点,因此,找到一种能够解决上述缺点的并且能够很好的应用于云存储环境的基于属性访问控制(ABAC)对云存储的发展具有重要的现实意义。2 第1章绪论1.2国内外研究概况和发展趋势一种新的基于身份加密(IBE)在2005年出现,通过将一组描述的属性作为用户身份,并且允许身份w的私钥解密用身份w’加密的密文,只要w和w’在“集合重叠”上彼此接近,这种加密方式称为模糊的基于身份加密方式[18]。这种模糊的基于身份加密方案可以应用到一种使用生物特征作为身份的加密方式中,因为它允许私钥身份和加密密文的公钥身份之间存在误差。通过对模糊的基于属性加密的方案的优化之后引入了基于属性加密(ABE)的方案,该方案中用户的密钥和密文都和一个描述性的属性集相关,当且仅当用户的密钥和密文之间的属性相匹配才能解密[19]。在该方案中,根据访问策略关联密文还是密钥有可以分为密文策略的基于属性加密方案(CP-ABE)和密钥策略的基于属性加密方案(KP-ABE)。基于密文策略的属性加密方案(CP-ABE)中,访问控制策略与密文相关,密钥与属性集合相关,只有当属性集合满足访问策略时用户才能解密文件。而在基于密钥策略的属性加密方案(KP-ABE),访问策略与密钥相关,密文与属性集合相关,只有当属性集合满足访问策略时用户才能解密文件。原始的基于属性集加密(ABE)方案具有一定的局限性,即该方案中的访问控制策略只能表达简单的门限关系。Bethencourt等人的方案中,访问结构可以是由AND,OR,NOT或门限组成的布尔公式组成[20]。在以前方案中,属性是通过一个属性授权中心进行管理的,而Chase的方案中,属性是由多个独立的属性授权中心进行管理的[21]。每个属性只能属于一个属性授权中心,而每个属性授权中心可以管理多个属性。这种方案可以容忍一定属性授权中机构被破坏,比使用单个属性授权中心的方案更安全[22]。该方案中通过引入一个全局标识符与用户密钥紧密结合,并且依赖一个中央授权中心整合来自不同属性授权中心的密钥,然后为用户提供一个最终密钥。在该方法中,引入一个证书颁发机构(CA)为每个用户分配一个全局用户标识符(UID)和为每个属性授权中心分配属性授权中心标志符(AID),那么两个用户相互勾结非法访问数据时不可能的。由于该方案中中央授权中心可以解密所有密文,那么中央授权中心将成为安全攻击的脆弱点和一个大型系统的瓶颈。另外,该方案只能表达“AND”策略方式。为了提高其访问策略的能力,Müller的方案使用了线性秘密分享矩阵LSSS,但是该方案依旧需要一个中央授权中心[23]。通过采用分布式随机函数将中央授权中心去除,但是它同样具有策略表达形式的局限。在Lin的方案中,授权中心集是预先确定的,并且在系统初始时授权中心之间需要互动[24]。3 河北大学工学硕士学位论文该方案可以抗最多m串通用户的串谋攻击,而m为系统初始化时选择的参数。Lewko提出一种综合的方案,他不需要中央授权中心,而且可以抗串谋攻击以及处理任何布尔公式属性访问策略[25]。但是该方案是建立在复合阶双线性群的基础上,所以会造成严重计算开销,而且没有考虑属性撤销的问题。Goyal的方案构建了一种新的访问结构,该访问结构是一个由门限作为节点的有限访问树[26]。在系统初始化时,指定访问树的界限,然后用(d,mum)表示,其中d表示访问树的深度而mum表示访问树的非叶子结点的最大个数。由于需要初始化时设置条件,所以该方案缺乏灵活度。在之前的方案中没有考虑用户的隐私保护等问题,Yu等人的方案通过隐藏访问结构来达到用户无法获得密文的访问结构等隐私信息[27]-[31]。Jung的方案中提出一种匿名的基于属性加密方案(AnonyControl)用于解决云存储中用户的隐私问题,该方案不仅可以实现细粒度的权限控制,而且在基于身份信息权限控制是也可以匿名[32]。此外,虽然数据完全外包给云到云服务器,但是云服务器无法阅读其内容,除非它的私钥满足特权树[33]。云存储访问控制实际应用中遇到权限的更新的问题,在基于属性加密的访问控制的方案中表现为属性的撤销,通过为每个用户属性设置截止日期,但是用户需要定期向授权中心更换密钥,该方案非常低效[34]。Boldyreva的方案提出一种高效的基于身份加密的撤销方案,该方法适用于KP-ABE和模糊基于身份加密方案[35]。基于属性代理重加密方案(ABPRE)是从传统代理重加密(公钥或基于身份的密码系统)相似地扩展到基于属性的一种加密方案[36]。用户可以指定一个代理,该代理可以将一个以某种访问策略相关的密文重加密为以不同访问策略相关的密文。该方案存在无法单独撤销具有相同身份的多个用户的缺点。另一种重加密方案(CP-ABPRE)在对密文的访问策略更新时,也不需要先对密文解密,而且减少了用户(委托人)的计算量和无需委托人随时在线,但是重加密的计算量依旧很大[37]。Liu提出一种基于时间的代理重加密方案,用户的访问权限在预定时间到期后自动失效,数据拥有者在用户撤销过程中可以离线[38]。该方案中的数据是与访问结构和访问时间相关的,用户使用一个属性集合和有效访问期限代表身份的。数据所有者和云计算服务提供商(CSP)需要提前共享一个根密钥,当它接受到访问请求时,云计算服务提供商(CSP)可以自动更新访问时间。因此,只有当用户的属性满足访问控制结构并且访问时间有效,用户才能恢复相应数据[39]。Ruj等人设计了4 第1章绪论一个新的支持属性撤销的方案DACC,但是该方案需要占用大量的通信开销,因为它需要数据所有者为每个非撤销用户发送一个新的密文分量[40]。Li提出的方案是能够支持属性撤销的多授权中心基于属性加密系统,但是该方法只适用于KP-ABE方案[41]。Green提出了两种基于属性加密的方案,他们都是将解密外包到服务器,而且该方案不支持多授权中心系统[42]。Yang等人提出一种有效的用于多授权中心云存储的数据访问控制系统,该方案将解密外包到服务器,并且实现了高效的属性撤销方法[43]。该方法不仅可以减少通信开销和计算开销,而且可以实现前向安全和后向安全。1.3本文的相关研究工作经过对云存储环境下访问控制技术以及基于属性加密在访问控制中的应用等内容的概述,可以清晰的了解到当前应用于云存储环境下的基于属性加密方案的优势以及存在的问题。优势是可实现多用户分享,细粒度访问控制,可扩展性强等特点,而存在的问题是在属性撤销时系统的计算开销大等缺点。通过对目前应用于云存储环境下的基于属性加密访问控制方案中已经使用过的代理重加密技术,解密外包技术,多授权中心技术等结合提出一种新的基于属性加密方案。本文的主要工作如下:(1)通过对文献整理,了解当前云计算技术和云存储技术的发展以及在发展过程中不断出现的问题,特别是影响云存储发展的数据安全问题。(2)云存储环境下,数据属主将数据存放在云服务提供商的服务器上,这样就使得用户失去了对数据绝对控制权[44]。云服务提供商可能为了商业利益而对存储数据进行窥探,篡改,窃取等违法操作。为了使该数据更加安全,用户一般会加密该数据。传统的加密算法中,采用对称加密算法对数据加密可以获得较高的效率但是该算法不适用于云存储环境下多用户情况,而非对称加密技术在多用户分享时分发密钥容易但是需要存储多个密文副本。因此,本文延续了以前的做法,用户先使用对称加密技术对数据加密,再运用改进型基于属性加密技术加密先前生成的对称密钥。这样做即增加了加解密的效率又减少了密文的存储开销。(3)传统的访问控制的技术在应用于云存储环境时,由于是多用户分享,所以在数据访问权限的控制上不够灵活。基于属性的访问控制(ABAC)在多用户分享时具有灵活性,因此被认为最适合应用于云存储中。由于多授权中心方案要比单授权中心方案更为安全,所以本文采用多授权中心基于属性加密访问控制方式,即系统中包含有多个5 河北大学工学硕士学位论文属性授权中心AAk和一个证书颁发机构CA。其中,各属性授权中心AAk管理不同的属性集,证书颁发机构CA不参与属性管理而是为用户和授权中心颁发证书。(4)基于属性的访问控制方案中,当要撤销用户的属性时系统需要对原密文以及用户密钥进行更新,这样会给系统带来沉重的计算开销以及存储开销。本文在代理重加密技术的基础上,采用一种属性分时撤销的方法来减少属性撤销时属性授权中心计算开销,并且在解密阶段采用解密外包技术来减轻用户解密时的计算开销。(5)本文为上述基于属性的访问控制方案提供了安全性证明,然后对属性撤销时,属性授权中心的计算开销以及存储开销进行了分析。1.4本文的组织结构第1章主要介绍了本课题的研究背景、研究意义、然后对国内外学者对于云储存环境下访问控制的研究工作进行概述,并分析了其中所存在的问题,最后通过结合现有的理论阐述本文的研究目标。第2章主要介绍了相关理论基础,其中包括传统访问控制,基于属性的访问控制ABAC,ABE加密算法,访问结构,分布式访问控制DACC,以及安全证明等。第3章主要介绍了设计的云环境下的基于属性的访问控制方案,详细介绍了该方案中的初始化算法,密钥生成算法,加密算法,解密算法,属性撤销算法,还有应用于云存储的基于属性访问控制方案中的属性授权中心注册,用户注册,文件生成,数据分享,属性分时撤销等工作过程。第4章主要介绍该方案的理论分析并通过实验进行验证。通过安全性证明,说明提出的云环境下基于属性访问控制的方案在保障云存储中数据的安全性方面满足其要求。通过分析该方案的计算开销和存储开销,并与之前方案进行比较说明了该方案在基本不增加存储开销的基础上减少了在属性撤销时的计算开销。第5章是总结与展望。概括本文所做工作,并提出未来亟需解决的难题。6 第2章相关理论基础第2章相关理论基础2.1访问控制概述访问控制是计算机安全领域中最早的问题,尽管技术在不断发展,访问控制仍然会是一个持续的挑战。访问控制组件决定了是否允许资源的访问请求。发起请求的实体通常被称为主体,而主体的请求通常是用户的一个程序或进程。用户是一个和系统和访问资源的交互的实体。访问控制是用来保护客体的。当验证用户后,系统会接收到主体的访问请求,访问控制组件会根据提供的信息和授权策略决定授予或拒绝。根据授权所需的信息和决策过程的不同,不同的访问控制模型可以实现不同的目的。2.1.1传统访问控制传统访问控制主要包括三种类型,这三种类型的访问控制各自的特点以及局限性如下表所示。表2-1主要的传统访问控制访问控制类型特点局限性信息可能会被未经授权的用户访基于主体身份的一种访问控制自主访问控制DAC问,因为在该方式下没有对客体的方式副本进行保护给用户和客体附加安全标签,所有根据主体和客体的安全等级情用户都需要获得许可才能访问客强制访问控制MAC况做出访问控制决策的体。策略是固定的,在这样的访问控制方式中访问控制缺乏灵活性每个角色都需要不同的授权集合这基于角色访问控制权限是封装到角色中的,然后样导致大量的角色需要定义,角色RBAC角色会进一步分配给用户的管理增加了访问控制系统部署的代价最近,人们已经越来越关注于RBAC的局限性。例如,由于每个角色都需要不同的授权集合这样导致大量的角色需要定义。角色的管理又延误了RBAC的部署,因为它是部署之前代价最高的过程。对于这些限制,现在主要存在两种方向的研究。一种是研究人员正努力将RBAC在各个方向进行创造性的扩展。例如,角色激活过程已经延伸到被束缚的上下文信息,如时间和地点,先决角色等等。用户除了角色之外还与其他信息相关联,如部门,团队,组等。然而,这些扩展的提出出于特定的目的需要定制的RBAC。7 河北大学工学硕士学位论文RBAC固有的可扩展性差的缺点阻碍了它的部署,因为它们是不通用的。除了扩展RBAC,还提出了一些其他的模型来克服传统模型的局限性。例如基于组织的访问控制,基于任务的访问控制,还有基于关系的访问控制。然而,他们很难发展因为需要具体的应用背景如网络和组织,而不具备通用性。一个更一般的模型越来越受到人们的关注,即基于属性的访问控制(ABAC)模型,它包含了上述方案的优点,而且可以超越它们的局限性。人们用名字:值的特征对来表示属性,而属性可以包括主体,客体,甚至属性本身。相对于依赖于人类管理的传统模型,ABAC提供了自动化的管理。例如,RBAC模型中给用户授权之前需要先进行角色分配,而在ABAC模型中一旦授权策略被制定,那么在发起请求时可以计算出授权而不用预先分配给用户。2.1.2基于属性的访问控制(ABAC)虽然有很多相关的研究已经发表了,甚至已经提出了基于属性访问控制(ABAC)的正式模型,但是基于属性访问控制仍然缺少一个综合模型对ABAC的组成成分以及操作精确描述。相关工作主要分为以下内容:ABAC的最基本形式,ABAC策略管理。(1)在基于属性访问控制的最基本形式中,它包括主体属性,客体属性,环境条件和访问控制规则或策略四部分。即使在一个孤立的小系统中,ABAC也是依赖于主体客体的属性,以及包含有访问规则的访问策略。系统中每个客体都必须明确分配描述该客体的客体属性。每个主体在使用该系统时都必须分配特定的属性。用户在系统中被管理员生成为一个主体,根据用户的特征分配主体属性。这个主体可能有一个名字,组织关系等。其他主体属性可能包括国籍,身份,安全许可等。这些主体属性由授权中心分配和管理,其中授权中心是一个为文件管理系统维护主体身份信息的组织。当有新的用户加入,老用户离开,和主体属性改变时,这些主体属性可能需要更新。系统中每个客体至少含有一个策略,该策略为主体的访问规则,操作,环境条件。这一策略通常来自于文件或程序规则,用来描述业务流程和组织内允许的操作。例如,在医院环境内,规则可能是只有经过授权的医务人员才能够访问病人的医疗记录。在系统中,如果客体是一个病人医疗记录的属性类文件,然后这个医疗记录规则将会选择和处理,以致人员类型属性为非医护人员的客体在执行读操作时将被拒绝访问并且该操作将被禁止。这个规则约束了主体和客体操作权限,而特权由属性间接指定(即主体可以对客体执行的操作)。容许操作的规则可以通过多种计算机语言表示:8 第2章相关理论基础通过一个属性和条件的布尔组合表示满足对一个具体操作的授权。使用一个主体和客体属性关系集合表示一个允许操作。一旦客体属性,主体属性,和策略被建立,那么客体就能够通过ABAC进行保护了。访问控制机构(ACM)整合策略,主体属性,客体属性,然后提供和实施决策(基于策略中提供的逻辑)。访问控制机构(ACM)必须能够管理在制定实施决策的过程,包括什么样的策略进行检索,以什么顺序检索属性,在哪儿检索属性。在ABAC模型中,策略的执行的程度局限于计算机语言和可用属性的丰富度。例如,一个主体分配了雇佣属性集(例如,LILI是一名五官科的护士),一个客体指定的创建时的客体属性(例如,一个五官科病人的病历夹)。一个权威机构制定规则给出允许操作的集合(例如,五官科所有的医生和护士都可以查看五官科患者的病历夹)。给主体配置属性和客体指定管理规则,规则指定了无数主体对客体可能发生的操作,客体所有者或规则制定者无需知道特定主体的先验知识。当一个新的主体加入组织时,规则和客体无需修改。只要这个主体指定属性必然可以访问客体(例如,所有在五官科的护士都分配这个属性),无需修改客体属性或者现有的规则。这是采用ABAC接受外面用户的主要好处。ABAC是信息共享的一个推动者,当部署到一个企业中,实现ABAC需要越来越复杂的组件。一些企业现有的能力,可以被用来实现ABAC。例如,大多数企业都有某种形式的身份和证书来管理主体属性,像名称,独有的身份标识符,角色,审查许可等。同样,许多企业可能会有一些组织策略或准则来建立主体对企业客体的访问授权规则。然而,这些规则通常不用机器可执行的方式写出,可以将所有的应用集中一致。ABAC策略必须在机器可执行方式下可用,并且存储在库中以供访问控制机构(ACM)使用。(2)ABAC策略管理。ABAC能否成功实施的关键取决于用户的需求,企业规模,资源的分配,客体需要被访问或共享的灵活性。一个访问控制机制(ACM)的功能组件在物理上和逻辑上是分离的而不是在ABAC的系统视图上描述的那样集中的。它包括的主要功能点:策略执行点(PEP),策略决策点(PDP),策略信息点(PDP),和策略管理点(PAP)。在一个环境中,这些组件必须共同发挥作用来达到访问控制能决策和策略的执行的目的。9 河北大学工学硕士学位论文图2-1ABAC策略管理图策略决策点PDP:通过评估适用的DPs和MPs计算出访问控制决策。策略决策点的一个主要功能是根据MPs调节DPs。策略执行点PEP:在主体请求访问响应后,执行由PDP做出的决策。PDP和PEP在功能上可能是集中的,但是在物理上和逻辑上彼此是分离的。例如,企业可以建立一个中央控制的企业决策服务用来评估属性和策略,然后做出决策并将决策发送个决策执行点PEP。这使得中央管理和控制主体属性和策略。另外,企业内的局部组织可能单独实施PDP利用一个集中的DP库。ACM组件的设计和分配需要ABAC管理功能的协调。为了计算访问决策,PDP必须含有属性信息。而这些信息由PIP提供,PIP的本文定义如下:策略信息点(PIP):作为属性检索源,或策略评估所需的数据,并把这些信息发送给PDP让其做出决策。这些策略在执行之前,它们必须进行彻底的测试和评估,以确保它们符合预期的需要,这些作用通过策略管理点PAP进行。策略管理点PAP可以定义为:一个用户管理界面用于创建,管理,测试,调试DPs和MPs,并把这些策略存储在一个适当的库中。基于属性访问控制工作基本流程如下:10 第2章相关理论基础首先,主体请求访问客体资源时,首先会向PEP发送访问请求。其次,PEP接受请求后,会发送关于属性策略的访问请求给PDP(PEP在接受到访问请求后,会通过PIP获得所有的主体,客体,请求操作所需的属性,并将访问请求转化为属性的访问请求)。然后,PDP会向PAP索取策略请求,PAP会从策略库中索取相应策略。最后,PDP会把策略响应发送给PEP,最后PEP决定该访问请求是否能够被授权。2.2基于属性加密体制(ABE)ABE被认为成ABAC的一种实际的形式,它不仅具有加密的特性同时还可以实现访问控制[45]。ABE可以分成两种基本形式密文策略基于属性加密方案CP-ABE和密钥策略基于属性加密方案KP-ABE。2.2.1CP-ABECP-ABE包括的四个部分,下表描述:表2-2CP-ABE的基本算法2.2.2KP-ABEKP-ABE包括的四个部分,下表描述:11 河北大学工学硕士学位论文表2-3KP-ABE的基本算法2.3访问结构访问结构的主要形式包括:属性的布尔函数,线性分享矩阵。任何布尔函数可以转化成一个访问结构。例如,如果有一个布尔函数:((aaa)(aa)(aa)),1234567其中aa,,,a是属性。布尔函数也可以通过访问树表示,其中叶节点表示属性,根节117点或中间节点用AND()和OR()表示。2.3.1门限共享方案为了保护数据,可以对它们加密,但是为了保护加密密钥,却需要不同的办法解决。一个密钥管理方案是将密钥放在一个单一的保卫森严的地方(计算机,人类大脑)。但是这种方案非常不可靠,如果发生不幸(电脑故障,突然死亡)可能导致信息无法访问。显而易见的解决方案是存储多个密钥副本到不同的位置,但增加了安全漏洞的危险。门限秘密分享方案是基于多项式插值定理的一种秘密分享方法。(k,n)秘密分享方案构成如下:设需要分享的秘密为D,随机选择aa,,,a,共12k1k1同组成一个k-1次多项式,即q(x)Daxax。秘密D可以分享分享n份,1k1其每一份为Dq(i)。当用户知道至少k个分享后,才能计算出D。i(x2)(x3)(xk)(x1)(x2)(x(k1))q(x)DD,Dq(0)(2-1)1k(12)(13)(1k)(k1)(k2)(k(k1))2.3.2线性分享矩阵LSSS线性分享矩阵是一个秘密分享方案,它满足两个条件:1)参与分享的每一个参与方形成一个在Z上的向量。P12 第2章相关理论基础2)存在一个被称为分享生成矩阵A,该矩阵是一个ln的矩阵。矩阵A的第x行使用函数(x)标记。当考虑到列向量v(s,r,,r),其中sZ是用来分享的秘密,2npr,,rZ是随机选择的,那么Av是对秘密s的l份分享。分享(Av)属于(x)方。2npx线性重构:假设是访问结构A的一个线性分享矩阵LSSS,S表示授权集,I{1,,l}并且I{x|(x)S}。那么对于秘密s的任何有效分享{}都有:k肯定存x在一组常数{wiZ}piI使得xIwxxs。二叉树形式的访问结构换成线性分享矩阵的方法:从根节点开始,首先设定根节点为(1),父节点为v[x],然后子节点从左到右标记。如果节点xAND,那么左侧子节点为(v[x]|1),右侧子节点为(0,,1),右侧子节点长度和左侧子节点相同。如果节点xOR,那么子节点的向量v[x]不变。最后,将所有叶节点向量长度补齐,短的向量右侧补零,再将叶节点的向量汇合成线性分享矩阵。例如:一个访问树为(A(D(BC))),根节点为(1),从上而下,从左到右开始标记。首先A被标记为(1,1),根节点的右方子节点为“”被标记为(0,-1)。该节点的左方子节点为D,右侧子节点为一个“”,D被标记为(0,-1,1),“”被标记为(0,0,-1)。节点“”的左侧子节点为B,右侧子节点为C,那么节点B标记为(0,0,-1),C被标记为(0,0,-1)。然后,将节点A的标记(1,1)右侧补零扩展为(1,1,0),将节点D的标记(0,-1)右侧补零扩展为(0,-1,0)。最后得到线性分享矩阵为S如下:110011S001010该矩阵的第一行为属性A,第二行为属性B,第三行为属性C,第四行为属性D。只要是授权的属性集可以将分享矩阵S化简到(1,0,0)。例如,属性集(A,B,D),(A,C,D)是授权集。而其他属性集(A,B,C)为非授权集。13 河北大学工学硕士学位论文还有一种方法:直接将门限函数转化为线性分享矩阵,首先需要将访问结构转换成门限函数形式,然后再将门限函数转换成线性分享矩阵。第一步:将访问结构转换成门限函数形式。例如:((AB)(BC)(AC))(AD)E((A,B,C,2),(A,D,1),E,3)(F,F,F,t)123其中F(A,B,C,2),F(A,D,1),FE,并且t3。123第二步:将门限函数转化成线性分享矩阵。首先,一些简单的门限函数直接可以转化为一个矩阵。例如:一个门限函数(n,t)可以直接转化成:11112t112222t1M13331nn2nt1一个访问结构转化成线性分享矩阵的具体步骤的例子,访问结构为:((AB)(BC)(C,D,E,2))(E,F,G,H,3)。首先转化成简单门限函数表示:((AB)(BC)(C,D,E,2))(E,F,G,H,3)((B(AC)(C,D,E,2))(E,F,G,H,3)(((B,(A,C,1),2),(,,,2),1),(E,F,G,H,3),2)CDE然后,再将该门限函数转换成线性分享矩阵。111000B112000A112000C110100C110200DM,L110300E120011E120024F120039G1200416H14 第2章相关理论基础2.4云环境下的访问控制DACC该方案主要考虑的应用场景为数据属主通过网络将信息存储到云中,而用户想访问云上存储的同样信息。密钥分发中心KDCs的服务器可能分撒在不同的国家,并且共同为用户生成密钥。KDCs可能是用来给用户分发凭证的政府组织。这些服务器将由不同的机构维护,这样避免其勾结。一个传统的云服务主要是由一个公司维护,因此,如果密钥分发中心KDCs是云的一部分,那么它们就可以相互勾结找到用户密钥。下图为该方案模型,其中n代表数据属主和用户,KDCs为管理属性和分发密钥SK的服务器。i密钥分发中心KDCs不是云中的一部分。该方案假设云是诚实和好奇的,它不会篡改存储在云上的数据,但是会尽量从用户输入中计算密钥。不同授权的用户也可能尝试串通以获得数据的访问。图2-2DACC方案模型主要包括四个算法:1)系统初始化,2)密钥分发中心KDCs分发密钥,3)发送者加密数据,4)接受者解密数据。1)系统初始化:选择生成元为g的群G,群G,GT的阶数为q,映射e:GGGT。一个哈希函数H:{0,1}G,映射用户身份标志到G中。其中A代表密钥中心,而Ljj为其包含属性集,选择两个随机数,yZ。密钥分发中心A的私钥如下。iiqjSK[j]{,y,iL}(2-2)iij15 河北大学工学硕士学位论文密钥分发中心公钥Aj的公钥如下。PK[j]{e(g,g),g,iiyiL}(2-3)j2)产生属性私钥:U从A获得一个属性集I[j,u]和每个属性iI[j,u]响应私钥sk。ujiu,skgHi(u)yi(2-4)iu,其中,ySK[j]。用户就可以使用其密钥解密数据了。ii3)发送者加密:访问控制树是由发送者设计,然后再将其转化成线性分享矩阵R。首先从Z上随机选择值作为s,选择h-1个数,组成一个向量v。然后计算Rv,pxxh其中R是一个R的行。随机选择一个向量wZ并计算wRw,对于R的每一行Rxqxxx选择一个随机数Z。xqsCMe(g,g)0Ce(g,g)xe(g,g)(x)xx(2-5)1,xCgxx,Cgy(x)xgwxx2,x3,x其中(x)是从R到属性的映射函数。x4)接受者解密:接受者U输入C,密钥{sk},群G之后获得M。U计算属性集uiu,u{(x):xX}I,对于这些属性的每一个,它检测他们的线性组合可以得到向量i(1,0,,0)。如果可以,那么肯定存在cxZq,使得cRxx(1,0,,0)。最后,对于xX,xX可计算出dec(x)。Ce(H(u),C)1,x3,xdec(x)(2-6)e(sk,C)(x),u2,xU计算出消息M。uMC0dec(x)(2-7)xX方案描述:16 第2章相关理论基础初始化决定了方案的系统参数以及群的大小,属性集由KDCs选择。例如,A选择j属性集合L。数据属主U想要在云上存储信息,它会为要加密的数据选择一个特定的ju属性集合I。然后,数据属主再决定访问结构,再将其转化成线性分享矩阵R。根据它u本身具有的属性还有从中心获得密钥,对数据加密。每个用户会获得一个属性集合,当它需要获得一个数据属主的服务而注册时。这些属性由密钥分发中心KDCs分发,并且使用SSH传输。如果云上的数据被用户请求时,分发中心KDCs生成送私钥给用户。云会发送一个数据副本给它。如果用户具有一个有效属性集合,那么它将使用密钥计算出数据。数据加密:加密过程分成两步。第一步,访问控制树通过计算会被转化成线性分享矩阵。第二步,消息被加密并且连同线性秘密分享矩阵发送到云上。假设有一个数据属主U想存储一个记录M,数据属主U会设计访问结构S(访问uu结构S帮助数据属主决定能够访问记录M的授权用户)。矩阵R是mh形式的并且定义矩阵R的行到属性的映射函数,其中m为涉及到属性总数。是一个排列,例如:{1,2,,m}w。加密算法需要输入需要加密的数据M,群G,线性分享矩阵R,映射函数(将线性分享矩阵中的属性映射到实际的属性集)。对于每一个消息M,密文C都是通过方程计算出来,最后将密文C存储到云上。一个例子:在一个职业社交网络中,该网络的成员可以张贴他们的简历寻找工作或可能的员工。一个人可能属于分布在世界各地的多个职业团体。假设一个成员在找工作,上传他的简历,并且只有特定的团体可以查看它。例如,一个团体可以查看“工程职业”或“在加拿大的计算机科学研究”或“美国计算机科学教师”。有两个属性中心,(1)职业类型:J(工程),J(计算机科学研究),J(教师职位)。(2)位置:P(加1231拿大),P(美国)。那么该访问结构为:J(JP)(JP)。通过转换能够获取212132此线性秘密分享矩阵:17 河北大学工学硕士学位论文1011R011101映射函数:(1)J,(2)J,(3)P,(4)J,(5)P。一个群体考虑的工12132作与在美国和加拿大的计算机科学职位相关,才能访问这个简历。如果一个群体考虑的工作是在加拿大的社会工作的话,它将不能访问这个简历。假设有一个团体(用户u2)公布的工作是计算机科学研究教师和位置是加拿大,那么它将获得属性J,J和P。231因此,它获得I[1,2]{J,J}和I[2,2]{P}。然后,该用户会从A中获得密钥sk,sk,23112,13,2会从A中获得密钥sk。加密过程中数据属主将CR,,C,{C,C,C}传21,201,x2,x3,xx{1,2,3,4,5}s输到云中。CMe(g,g),其中s是从Z选取的随机数。如果用户请求访问此信息,那0qs么用户会从中找出属性J,J和P。然后,用户就能够得到e(g,g),从而能够解密231出消息M了,而由于云不含有这些私钥,所以它无法获得消息M。当撤销用户U时,删除U包含的属性集I,所有改变存储的含有属性iI的数据。uuuu然后进行以下步骤:1)重新选择s值,sZ。2)向量v也需要随着s的改变为一newqnew个新的v。3)计算Rv,x行对应I的属性。4)为x重新计算C。5)将C的newxxnewu1,x1,x新值安全传送到云上,再CMe(g,g)snew传输到云上。02.5可证明安全性安全模型如下:Setup:系统运行初始化程序。敌手指定损坏的授权中心集SS,挑战者使用密AA钥生成算法获得一个公私钥对。那些没有被破坏的授权中心集SS,敌手只能从挑AA战者那里获得公钥。对于S中的损坏的授权中心,敌手会从挑战者那里同时获得公钥A和私钥。18 第2章相关理论基础密钥查询阶段1:敌手通过提交配对(sig(uid),S),,(sig(uid),S)给挑战skCAaid,1skCAaid,q1者来获得密钥,其中S是一个属于非损坏的授权中心AA的属性集,sig(uid)是一aid,1aidskCA个用户证书,敌手会获得相对应的秘密密钥在挑战者那里。挑战:m0和m1是两个等长的消息,敌手将其传输给挑战者.此外,敌手给出一个挑战机构(M*,P*)且满足一下条件。V表示M*的列子集,M*用于标记损坏的授权中心集AAs控制的属性。对于每个uid来说,V表示M*的列子集中敌手查询的属性。对uid于每一个uid来说,我们要求VV不能包括(1,0,,0)。换句话说,敌手不能通过结uid合从损坏的属性授权中心AAs获得能够解密的密钥集。敌手随机选择b{0,1}并在加密mb时使用访问结构(M*,P*),然后敌手将获得CT*。密钥查询阶段2:敌手可以查询更多的密钥,只要他们不违反挑战结构(M*,P*)的限制。猜测:敌手猜测b为b。1在博弈中敌手A的优势是Pr[bb]。22.6本章小结本章首先对传统访问控制技术进行了概述,分别介绍了RBAC,MAC,DAC等技术。然后,详细介绍了ABAC的基本形式,以及策略管理。还有详细介绍了基于属性加密体制的分类以及访问结构中的门限秘密分享和线性秘密分享矩阵LSSS。最后介绍了DACC模型和多授权中心方案的安全证明模型。19 河北大学工学硕士学位论文第3章基于属性加密算法的改进和访问控制方案3.1引言在分布式访问控制方案(DACC)中,安全假设为云服务器是诚实和好奇的,它不会篡改存储在云上的数据,但是会尽量从用户输入中计算密钥。它可能串通用户来尝试计算出其他用户的密钥。不同授权的用户也可能尝试串通以获得数据的访问。在DACC方案中包括主要算法有系统初始化,密钥分发中心KDCs分发密钥,发送者加密数据,接受者解密数据。本方案安全假设如下所述。本方案设计的主要包括的算法有:初始化算法,公钥生成算法,加密算法,解密算法,属性撤销算法。在本章后面部分中提出将基于属性加密方案应用于云存储访问控制方案。3.1.1安全假设在云存储系统中,由于云存储服务提供商所拥有的服务器不在我们的控制范围内,所以服务器有可能会把用户的数据发送给未获得访问权限的用户情况,而且服务器可能同时对其的内容感兴趣。因此,我们发送数据之前要先加密数据并将加密后的数据和密钥发传输到云中。在整个加密和解密过程中我们假设云服务器将正确执行属性授权中心分配的任务。在解密过程中,我们假设未经授权的用户可能串谋以获取未经授权的文件,同时属性授权中心可能妥协或者被破坏。3.1.2判定性q-BDHE假设判定性q-BDHE假设问题如下。双线性群G的阶数为素数p,其选择依据安全参数,其生成元为g,然后随机选择as,Z。假设如下:pqs1zazazaaqaq1azqy(,ggg,,g,,g,gg,,g,,g,azqgsbj,gbj,,gabj,1jqqgasbbkj,,gasbbkj),1jkqkj,,20 第3章基于属性加密算法的改进和访问控制方案q1as那么很难区分开一个有效的元组e(g,g)G和G的一个随机的元R。一个输出TTz{0,1}的概率多项式时间算法B,如果存在优势ε可以解决q-BDHE假设,那么:aq1sPr[B(y,Te(g,g))0]Pr[B(y,TR)0]3.2改进型基于属性加密算法3.2.1初始化算法初始化:该算法由CA执行。首先,系统安全参数由CA生成,并根据安全参数产生群G1和G2且为素数p阶,双线性配对运算为:e:G1G1G2,其中g为G1生成元。在Zap上随机选取a生成系统主密钥M_SK,同时系统参数PP为g。选择用于用户认证的Cert_SK和Cert_PK公私钥对。然后,CA为AA分配全局唯一授权中心标识aid。最后,当有用户注册时,CA给该用户分配一个全局唯一的用户标识uid,CA再从Zp上随机选取up和us,其中该用户的全局公钥为GPK(uid)。upGPK(uid)g(3-1)该用户的全局私钥为GSK(uid)。GSK(uid)u(3-2)s3.2.2公钥生成算法公钥生成:该算法由各个AA执行,输出各授权中心中的所有属性公钥和各授权中心公钥。首先,系统中的AAi从Zp上随机选择i,i,i,则该授权中心的私钥为ASK(aid)。ASK(aid)=(i,i,i)(3-3)该授权中心的公钥为APK(aid)。1iAPK(aid)e(g,g),igi,gi(3-4)在该授权中心中管理的属性集为Aaid,那么属性attj的属性公钥为ATTPK(att)。jviattjATTPK(att)jgH(att)j(3-5)最后,各授权中心将各自的授权中心公钥APK(aid)和属性公钥ATTPK(attj)发送给21 河北大学工学硕士学位论文数据属主。3.2.3加密算法该算法由用户执行,需要输入从CA中得到的系统参数PP和生成元g,从各个授权中心AA中得到的授权中心公钥APK(aid)和各属性公钥ATTPK(attj),对称密钥Kdata,和用户制定的访问结构(M,ρ(k)),输出密文CT。其中,M为线性分享矩阵,是拥有l行n列的矩阵,l表示涉及到授权中心集AS的所有属性的个数,ρ(k)表示与M的第k行相关的属性。该算法首先需要从Zp随机选取s作为加密指数,然后再从Zp中随机选择b,,b用1n1于分享加密指数s,形成一个向量v(s,b,,b)。Mk表示矩阵M的第k行,那么1n1cvM,再从Zp中随机选取d,,d。最后计算密文CT。kk1lsCTCKei{data(g,g),acvrkik1tolC:gkg(k)H((k)),(3-6)k,1Cgrk/i,Cgrkii}k,2k,33.2.4私钥生成算法该算法由涉及到的授权中心执行,需要输入用户证书,该授权中心的授权中心私钥和系统参数PP以及属性集合UAS(aid,uid),然后输出该用户的属性私钥。首先,认证用户是由授权中心完成,并根据用户属性集生成用户部分属性私钥ATTSK(aid,uid)。ATTSK(aid,uid)(Kgi/usgaup,aiduid,Lgius,(3-7)aiduid,uvjjpujjsattjattjUAS(aid,uid):Kaidatt,jggH(att)j)3.2.5解密算法该算法由云服务提供商中的解密令牌服务器执行,需要输入用户的属性私钥和一部分密文。首先用户提出申请,云管理服务器将该用户的所有属性私钥全部发送给解密令牌服务器,并将密文CT也发送给解密令牌服务器,只有当用户属性满足访问结构时解22 第3章基于属性加密算法的改进和访问控制方案密令牌服务器才能计算该用户的解密令牌DT,最后云管理服务器将DT和E(F)发送给该用户。其中,AS(uid)表示用户涉及到的授权中心集,NA(uid)表示涉及到的授权中心个数,S(uid)表示用户所有的属性集。该算法选择常数集{wZ},如果该用jpj1,2,,NA(uid)户属性集满足访问结构,则wjjs。jS(uid)e(C,K)1aiduid,DT[wNAj(uid)wNAj(uid)iAS(uid)e(C,GPK(uid))k,1e(C,Kk,2aidatt,)jjUAS(aid,uid)jUAS(aid,uid)1](3-8)wNAj(uid)e(C,Lk,3aidatt,j)jUAS(aid,uid)isu/se(g,g)进一步解密算法:该算法由用户执行,需要输入用户的全局私钥为GSK(uid),解密令牌DT和密文CT还有用对称密钥加密后的文件E(F),经过运算后输出文件F。首先,用户通过计算获得对称密钥Kdata,然后再通过使用对称密钥Kdata将E(F)解密出文件F。对称密钥的计算如下。GSK(uid)KCDT(3-9)data3.2.6属性撤销方案当某个用户的属性撤销时,如果该用户没有立即访问该文件,则其他未撤销属性用户不用执行属性私钥的更新和密文的更新,其他用户的访问将不受影响。当撤销属性的用户再次访问该文件时,授权中心将更新该属性的版本,并且更新密文,但是并不更新所有未撤销属性的用户的属性私钥,而是当这些未撤销属性的用户再次访问时,授权中心才进行更新。为完成上述工作,授权中心中需要存储一个撤销属性用户列表RAL(如表3-1)。表3-1属性撤销列表attjvattjuidxuidyRAL(v)表示撤销属性用户列表RAL中存储的版本号,v(uid)表示用户的该属attjattj23 河北大学工学硕士学位论文性的版本号,RAL(att)表示RAL内用户标识集。用户的属性撤销可以根据访问该数据j的用户类型将属性撤销发生时,与该属性相关的密文和所有的未撤销属性的用户的属性密钥的更新分时进行操作,根据访问用户的类型不同分为四种情况:(1)当(RAL(v)v(uid))AND(uidRAL(att))时,即该用户是非撤销属性的attjattjj用户并且是在撤销用户访问数据之前访问该数据的或者没有发生属性撤销。此操作不做任何改变,用户依旧可以对数据进行解密。(2)(2)当(RAL(v)v(uid))AND(uidRAL(att))时,即该用户是撤销属性attjattjj用户并且是在撤销操作后首次访问该数据。授权中心首先更新RAL中该属性的版本vattjivattj到新的版本号v,然后更新属性公钥ATTPK(att)gH(att),最后更新密文attjjjrkiacv中与属性相关的部分Cgkg(k)H((k))。由于该用户包含在RAL中,所以不k,1能更新该用户的属性私钥,即该用户无法解密更新后的密文。(3)当(RAL(v)v(uid))AND(uidRAL(att))时,即该用户是撤销属性用户attjattjj并且是在在撤销操作后再次访问该数据。由于不能更新用户属性密钥,所以该用户依旧不能解密密文。(4)当(RAL(v)v(uid))AND(uidRAL(att))时,即该用户是非撤销属性用attjattjj户并且撤销用户已经在撤销操作后要求解密该数据了,该用户首次访问该数据。授权中jjpujj/usvattj心需要改变该用户的属性私钥中一部分即KggH(att)。aidatt,jj3.3云存储访问控制方案3.3.1方案描述本文设计的云存储访问控制方案如图3-1所示,其中显示了五种类型的实体:全局证书颁发机构(CA),属性授权中心(AA),云服务器(CloudServer),数据属主(Owner),数据用户(User)。其中各实体在方案中的作用如下:(1)全局证书颁发机构(CA):在系统中为USER和AA颁发证书。首先,在建24 第3章基于属性加密算法的改进和访问控制方案立系统时,所有用户和属性授权中心向CA申请注册,CA向合法的用户颁发证书,同时CA给系统中每一个用户分配一个全局唯一的用户标识UID和给每一个属性机构分配一个全局唯一的属性标识AID。CA建立系统时接受所有的用户和机构的注册并且CA还负责每一个合法用户的全局密钥和全局公共密钥的分布。但是,CA不参与任何属性管理和属性相关密钥的创建。(2)属性授权中心(AA):每个AA独立的。将整个属性集按类别分类,使其成为N个不相交的集合(例如,{学校:清华大学,北京大学等}{专业:通信工程,网络工程等})。每一个属性授权中心AA只有一种类别的属性,这样可以有效的保护用户的信息不被泄露。每一个属性授权中心AA负责为它管理的属性产生一个公共属性密钥和与该属性相关的用户产生一个秘密密钥。图3-1云存储访问控制模型(3)云服务器(CloudServer):云服务器向数据属主提供存储服务和向云用户提供数据访问服务。数据属主在向云服务器上传数据之前,先加密数据利用对称加密技术,25 河北大学工学硕士学位论文再将密文上传给云服务器。在数据解密阶段,用户将需要云服务器为其提供解密令牌。(4)数据属主(Owner):Owner可以根据制定的访问策略树对文件进行加密,使得那些用户满足访问策略树时可以获得文件。通过这种形式使得数据属主能够控制文件访问。(5)用户(User):为了解密密文,用户需要将从AA中获取的属性密钥发送给云服务器,要求其产生解密令牌,用户在获得返回的解密令牌后,依据全局密钥进一步进行解密。其中,用户是否获得正确的解密令牌取决于其属性集。3.3.2访问控制过程本方案的访问控制过程主要包括系统初始化,文件创建,用户访问,用户的属性撤销等。(1)系统的初始化该方案中,系统的初始化包括证书颁发机构CA和属性授权中心AA的初始化。首先证书颁发机构CA会运行初始化程序,会为系统生成主密钥M_SK以及系统参数PP还有一对用于认证用户的公私钥对Cer_SK和Cer_PK。其次,用户在证书颁发机构CA中进行注册,如果用户为合法用户,那么CA会给该用户分配一个全局用户标识uid,再为用户生成全局GPK和全局GSK,再使用Cer_SK为用户生成一个证书。再次,属性授权中心AA进行注册,如果属性授权中心AA是合法的,那么证书颁发机构CA会为该属性授权中心分配一个属性授权中心的全局标识aid,并且证书颁发机构CA会将Cer_PK和系统参数PP发送给该属性授权中心AA。26 第3章基于属性加密算法的改进和访问控制方案图3-2系统初始化最后,每个AA运行初始程序,会生成该AA的公私钥ASK和APK以及ATTPK。(2)文件创建数据属主将文件F上传至云存储服务提供商之前,首先会使用对称加密技术将文件F加密成E(F),然后将Kdata使用改进型算法进行加密会得到密文CT。其中,数据属主会根据从属性授权中心AA得到的属性授权中心公钥APK和属性公钥ATTPK以及数据属主定义的访问结构(M,ρ(k))对对称密钥Kdata加密。最后,数据属主会根据得到的文件标识FID,将数据上传至云服务提供商的服务器中。图3-3文件创建文件的形式如下表:27 河北大学工学硕士学位论文表3-2文件存储形式FIDE(F)CT(3)用户访问当用户需要访问FID文件时,首先AA会验证该用户,如果该用户为授权用户,那么AA会为该用户生成ATTSK。然后,云服务提供商的解密令牌服务器会运行解密令牌算法程序,输入用户的属性私钥ATTSK以及密文CT。若用户属性集合满足访问结构,那么服务器为用户会生成DT。最后用户根据令牌DT对CT进一步解密以获取Kdata,再根据Kdata对E(F)进一步解密来得到最后的F。图3-4文件访问(4)用户的属性撤销当需要撤销某些用户的属性时,管理该属性的属性授权中心AA会将该用户的用户标识uid写入属性撤销列表中RAL。如果撤销用户没有在属性撤销后立即访问该文件,那么其他用户访问该文件没有任何改变。只有当撤销用户在撤销发生后访问该文件时,属性授权中心会更新该属性的版本号以及与该属性相关的密文Ck,1。然后,当未撤销用户再次访问时,授权中心AA更新这些用户ATTSK。通过这样做,到达属性分时撤销,减少同时更新所有用户的属性私钥所需的计算开销。28 第3章基于属性加密算法的改进和访问控制方案图3-5用户属性撤销3.4本章小结本章详细描述了改进型的ABE,其具有多个授权中心并且支持属性撤销操作。该算法包括了初始化算法,密钥生成算法,加密算法,解密算法,属性撤销算法等。然后详细描述了提出的云环境下基于属性的访问控制的方案,并且详细描述了该方案中系统的初始化,文件的创建,用户访问,用户的属性撤销等过程。29 河北大学工学硕士学位论文第4章理论分析和性能分析在实际的云存储应用中,访问控制和加密技术主要用于保护用户存储数据的机密性。在一下内容中,主要对该模型进行了安全性证明和抗共谋性分析,然后对该模型进行计算复杂度分析以及实验对比。4.1模型的安全性分析4.1.1安全证明当证明该方案在定义的安全模型下是安全需要满足一下定理。定理:当判定性q-BDHE假设问题成立时,敌手通过一个l*n*的挑战矩阵n*q,没有多项式时间选择性破坏我们的系统。证明:假设一个敌手A存在不可忽略的优势ε=AdvA解决我们的选择性安全游戏中的难题,假设敌手选择一个挑战矩阵M*并且最多含有q-1列。在安全游戏中,敌手可以查询任何密钥但是不能联合从破坏的属性授权中心AAs获得的密钥用于解密。由于这些限制,多授权中心系统的安全问题等同于单授权中心。因此,我们建立一个模拟器B如下。INIT:模拟器输入q-BDHE的挑战yT,。敌手给出访问结构M*,ρ*,其中线性秘密分享矩阵M*有n*列。Setup:模拟器运行初始化算法并发送g给敌手。敌手选择一个破坏的授权中心集合集SS,并揭示这些给模拟器。对于每个非破坏授权中心AA(kSS),模拟AAKAAq器随机选择Z(kSS)和laql以及e(g,g)ke(g,g)e(g,g)aak。kpAAkk然后,我们描述模拟器如何通过建立的一个随机预言机H。考虑到对H(x)调用,若H(x)已经在表中定义,那么预言机返回相同答案,否则选择一个随机值dx。X表示i的指数集。也就是说,集合X中所有行指数匹配相同属性x。模拟器执行随机预言机如2nH(x)gdxgaMi,1*/bigaMi,2*/bigaMi,n*/bi。其中当X=0时H(x)gdx。随机预言机根据gdxiX的值随机响应。30 第4章理论分析和验证模拟器随机选择两个数k,kZp。然后,它为每个未破坏的授权中心AAk产生公1k钥如PKe(g,g),kgk,gk。k通过随机选择一个版本号vZ,模拟器模拟出公共属性密钥xkpkvdaM*/baM2*/baMn*/bPKgxkxgi,1igi,2igi,ni。XKiX密钥查询阶段1:在这个阶段,模拟器响应敌手请求。假设敌手向模拟器提交配对(sig(uid),S)来生成密钥,其中Sk表示未破坏授权中心AAk的属性集合,sig(uid)skCAkskCA表示CA发布的用户认证。假设Sk结合从破坏的授权中心获得的任何密钥都不满足M*。模拟器首先认证用户的证书通过使用CA的公钥,然后模拟器随机选择数rZp。然n*后找到一个向量w(w,w,,w)Z,这样,w1=-1并且对于所有i(ρ*(i)sk)有12n*p*wM0。通过定义一个LSSS,这样一个向量必须存在,因为sk不满足M*。i1qq1qn*1模拟器隐含定义u为u(rwawawa),设置12n*zq1iwi1azrzuGPKuid(g)gg。i1,,*nk模拟器构建Lgz。uidk,1kq1从gu的定义,我们发现gau包含一项ga,这将消除gz中的未知项当创建araq2iwikKgzgzgz。为了计算K(xS),如果访问结构中用到属uid,kxuidkk,,kki2,,*naq1/b*性x,我们必须确保没有没有形成模拟出gi的条件。然而,由于wM0。因此,这i些条件都取消。仿真器计算K如下:xuidkk,,*Mij,kkzkk(vxkdxk)rkkaq1jkb/ikkwkKxuidkk,,gGPKuid(g)(g)。iXj1,,*nk1,,*,nkj如果访问结构没有用到属性xS,即不存在这样的i即*(i)x。对于这些属性AID31 河北大学工学硕士学位论文kk我们可以让Kgz(GPK)kk(vxkdxk)。xuidkk,,uid挑战:在这阶段,模拟器预先确定挑战密文。敌手将两个消息m0,m1发给模拟器。sAIDks模拟器随机选择b,并且构建CmTbe(g,g)和Cg。kIA这部分的难点是模拟器模拟Ci的值,因为必须清除包含的部分。然而,模拟器可以选择秘密分割,所以这部分可以被清除掉。直观地说,模拟器将选择随机数y,,y和2n*通过使用向量v(s,say,sa2y,,san*1y)Zn*分享秘密s,然后它再随机选择23n*pr,,r。1l让Ri表示所有ki的集合,i1,,*n。该集合的所有其他的具有相同属性的行编1k号作为行i。挑战密文的组成部分可以计算出如,Dggrisbik和Dggrisbik。1,i1,i通过向量v,我们可以构建秘密分享如sM*(saj1y)M*。然后,我们可ii,1ji,jj2,,*n以计算出Ci如:kirasj(bi)*Cgv*(i)H(*(i))(gaMij,yj)(g)bsik(v*(i)d*(i))(gbk)kMkj,。ij1,,*nkRji1,,*n秘密密钥查询阶段2。类似于阶段1。q1as猜测。敌手最后提交b的猜测b,如果bb,那么模拟器输出0以表明Te(g,g)。否则,它就输出1以表明T是在GT内的随机群元素。当T是一个元组时,模拟器B提供了一个完美的模拟所以有aq1s1Pr[B(y,Te(g,g))0]Adv。A2当T是一个随机群元素时,消息mb对于敌手来说完全隐藏,可以得出aq1s1Pr[B(y,Te(g,g))0]。24.1.2抗共谋性分析在本方案的初始化阶段,CA给用户分配一个全局唯一的用户标识uid,CA再从Zpup上随机选取up和us,其中该用户的全局公钥GPK(uid)g,该用户的全局私钥为32 第4章理论分析和验证GSK(uid)u,在用户的私钥生成阶段,由于在用户属性私钥中植入两个随机数,所以s用户来说无法获得一样的ATTSK,即所有用户不能进行合谋攻击。多授权中心的安全性,当CA被攻破后,敌手只是得到了所有用户的全局公钥和全局私钥,只有全局公钥,敌手是无法计算出解密令牌DT。若NA(uid)-1个AA被攻破后,敌手还是不能正确解密,因为剩下的AA仍会起到作用。4.2模型的性能分析在云存储环境下,影响系统的性能的因素主要包括加密和解密时,系统的计算开销和存储开销。下面是对本文提出的基于属性加密算法中的计算开销和存储开销的分析并与之前的方案进行对比。4.2.1基于属性加密方案的开销在这一部分主要分析属性撤销发生后,该方案中属性公钥更新过程和属性私钥更新过程以及密文更新过程中的计算开销。用户属性撤销发生后,该系统主要主要变化集中在上述三个过程中,以下为方案中详细分析了计算开销。初始化过程中,中央授权中心只是进行了设定安全参数生生群和为用户生成证书以及用户全局公私钥等,在该过程中主要进行了3次循环群G幂运算,假设循环群G的幂运算的时间开销为Tm而进行一次配对运算设为Tp,所以该过程的时间开销为3Tm。公钥生成过程中,首先属性授权中心通过公钥生成算法为用户生成属性授权中心公钥APK和属性授权中心私钥ASK,其中主要进行了循环群上的幂运算。假设有属性授权中心AA为I个,属性为J个,那么在生成属性授权中心公钥时发生了2I次循环群G上的幂运算和I次双线性对运算,时间开销为2ITm+ITp。生成属性公钥ATTPK过程中发生了2J次循环群上的幂运算,那么生成属性公钥ATTPK的时间开销为2JTm。加密生成密文CT的过程中,主要进行了循环群G上的幂运算,首先在生成C的过程中,系统进行了I次配对运算以及一次循环群上的幂运算,即生成C的时间开销为ITp+Tm。生成C’的过程中,系统进行了一次循环群上的幂运算,即生成C’的时间开销为Tm。生成Ck,1的过程中,由于使用到线性秘密分享矩阵LSSS,所以假设秘密分享矩阵的列数为L,也就是生成Ck,1时3L次循环群上的幂运算,即生成Ck,1的时间开销为3LTm。生成Ck,2的过程中,系统需要进行了L次循环群上的幂运算,即生成Ck,2的时33 河北大学工学硕士学位论文间开销为LTm。生成Ck,3的过程中,系统也需要进行了L次循环群上的幂运算,即生成Ck,2的时间开销为LTm。所以在生成密文CT总共需要进行4L+2次循环群G上的幂运算和I次的双线性配对计算,那么生成CT过程的时间开销为(4L+2)Tm+ITp。用户私钥生成过程中,属性授权中心接受用户的证书以及授权中心私钥和系统参数还有用户的属性集合后,通过计算输出用户私钥。在该过程中,属性授权中心的属性私钥ATTSK主要是进行循环群G上的幂运算。生成Kaid,uid需要进行3次循环群G上的幂运算,即生成Kaid,uid的时间开销为3Tm。生成Laid,uid需要进行1次循环群G上的幂运算,即生成Laid,uid的时间开销为Tm。生成Kaid,attj的过程中,授权中心需要进行3次循环群G上的幂运算,那么生成Kaid,attj的时间开销为3Tm。解密令牌生成过程中,解密令牌服务器接收用户的属性私钥ATTSK和密文的一部分,如果用户满足访问条件,那么服务器将进行解密令牌的生成。解密令牌DT生成过程主要进行的是双线性对计算,假设涉及到M个属性授权中心,那么生成解密令牌DT需要进行3M+1次双线性对计算,即生成解密令牌DT的时间开销为(3M+1)Tp。最后解密过程中,用户通过GSK和令牌DT解密密文CT获得Kdata。然后再通过Kdata进一步对文.件E(F)解.密。其中,生成对称密钥Kdata的过程中主要是进行1次双线性对计算,那么生成对称密钥Kdata的时间开销为Tp。在系统发生属性撤销后,如果用户是非撤销属性的用户并且在撤销用户访问数据之前访问该数据的情况下,由于该过程不需要进行任何操作所以在该过程中用户依旧可以获得属性私钥,然后继续对数据进行解密。如果用户是撤销属性用户并且在撤销属性操作发生后首次访问该数据时,由于授权中心会更新RAL中该属性的版本号,并更新属性公钥ATTP,最后更新密文中与属性相关的部分Ck,1。其中更新属性公钥ATTP时,授权中心主要进行了循环群G上的幂运算。在更新属性公钥ATTP时,授权中心需要进行2次循环群G上的幂运算,即更新属性公钥ATTP的时间开销为2Tm。更新密文部分Ck,1时,授权中心也主要是进行了循环群G上的幂运算。那么,更新密文部分Ck,1时,授权中心进行了3次循环群G上的幂运算,即更新密文部分Ck,1的时间开销为3Tm。如果用户是撤销属性用户并且在撤销操作发生后非首次访问该数据,用户由于无法更新属性密钥,所以用户无法解密更新后的加密数据,该过程无需任何操作。34 第4章理论分析和验证当用户是非撤销用户并且是在撤销用户要求访问该数据后的再访问该数据时,由于密文部分Ck,1已经更新,而其为非撤销属性用户,所以需要更新其ATTSK,以便能够解密更新后的密文。在更新该用户的属性私钥中,只需要对该用户私钥中的Kaid,attj,而更.新Kaid,attj的过程中需要进行3次循环群G上的幂运算,即更新的时间开销Kaid,attj为3Tm。在实际的云存储环境下,系统拥有大量的用户,在属性撤销发生后随时可能发生一个或多个用户同时访问该数据的情况,在这种情况下,假设系统一共有N个与属性相关的用户,一共有(m+n0)个用户请求访问该数据,其中m为请求访问的用户中含有该属性的用户个数,n为请求访问的用户中不含有该属性的用户个数。下表是在属性撤销发生后首次访问该数据时的计算开销表4-1首次访问时计算开销SchemeAccessuserATTPK(attj)Kaid,attjCk,1方案[28]m,n2TmN•3Tm3Tmm=0000本方案m0,n=02Tm03Tmm0,n02Tmn•3Tm3Tm下表是在属性撤销发生后再次访问该数据时的计算开销表4-2再次访问时计算开销SchemeAccessuserATTPK(attj)Kaid,attjCk,1方案[28]m,n000m=0000本方案m0,n=0000m0,n00n•3Tm0通过上述表格,可以看出,在实际情况下撤销发生后同时访问该数据的用户中不含有该属性的用户个数n远小于N,这样就可以大大减少首次访问该数据时的计算开销。这样做的目的是将属性撤销发生后将属性密钥更新进行分时操作,减少由于属性撤销发生后需要同时将所有的含有该属性用户的属性私钥更新所带来的计算开销。4.2.2基于属性加密方案的存储开销在云存储服务中一个主要的问题是访问控制模型的存储开销的大小。在该访问控制方案中,假设一共有NA个AA,每一个AAk管理属性个数为na,k。用户uid的属.性集中包.含的属.性授.权中.心AAk中的属.性个.数为na,k,uid。而在CT中,与密.文相关的属.性个.35 河北大学工学硕士学位论文数为l。如果该方案中群的阶数为p,那么在该系统中,可以容易的计算出每个实体的存储开销。中央授权中心CA在初始化阶段,由于需要生成乘法循环群G1和G2其中阶数为p,还有主密钥M_SK,系统参数PP还有全局公钥GPK以及全局私钥GSK,那么中央授权中心在该阶段具有存储开销为(3Nu+2)P。属性授权中心AAk公钥生成阶段,授权中心AAk需要生成授权中心私钥ASK和授权中心公钥APK,以及为其管理的所有属性生成属性公钥ATTPK。在该阶段,属性授权中心AAk的存储开销为(na,k+3)P。数据拥有者Owner由于拥有数据的绝对访问权,所以它需要存储所有属性授权中心NAAA的所有属性密钥ATTPK,那么数据拥有者的存储开销为(3NA1k1na,k)p。User的存储开销主要发生在属性私钥生成阶段,由.于User的属.性集合UAS中含.有na,k,uid个NA属.性授.权中.心AAk中的属.性,所.有用.户User的存.储开.销为(3NA1k1na,k)p。Server的存储开销基本集中在密文CT生成阶段。由于CT与属性相关,那么如果CT中具有属性个数为t,那么服务器Server的存储开销为(3t3)p。c在云存储访问控制的系统中,当属性撤销发生后利用加入的属性撤销列表让用户的属性密钥的更新分时进行,在该过程中并未加入额外的存储开销。4.3实验对比仿真环境:Intel(R)Core(TM)i3CPU2.30GHz4.00GBRAM,操作系统为Windows7运行VMwareWorkstation上安装Ubuntu,分配2GB内存。本文设计以下实验进行进行证明,文件大小为1MB,系统中共有6个用户。(1)属性撤销发生后,撤销用户首次请求访问该数据时。一个撤销用户随着其撤销属性的个数的增加,方案[28]和本方案对属性公钥的更新的影响的实验,运行结果如图4-1所示:36 第4章理论分析和验证图4-1撤销属性个数对属性公钥影响方案[28]和本方案在属性撤销发生后,属性公钥的更新的时间开销都会随着撤销属性的个数的增加而线性增加。(2)属性撤销发生后,非撤销用户在撤销用户首次要求访问数据后,方案[28]和本方案对属性私钥更新的影响的实验。运行结果如图4-2所示:图4-2非撤销用户访问个数对属性私钥影响实验中共有5个非撤销用户,原方案中需要将5个非撤销属性的用户同时进行属性私钥的更新,而本方案只是对属性撤销发生后同时请求访问该数据的非撤销用户进行属性私钥的更新。属性私钥的更新时间开销随着同时请求访问该文件的非撤销用户的个数线性增加,而在实际的应用中,由于大量的非撤销用户不会同时要求访问该文件,所以更新属性私钥的个数会小于非撤销用户的总数,因此,更新属性私钥的时间开销相对减少。37 河北大学工学硕士学位论文(3)属性授权中心中某个属性发生多次撤销后,非撤销用户首次要求访问该文件时,方案[28]和本方案对属性私钥更新的影响的实验。运行结果如图4-3所示:图4-3属性撤销次数对属性私钥的影响方案[28]在属性发生后会立即进行属性私钥的更新,并且属性私钥的更新时间开销随着撤销属性的撤销发生的次数线性增加。而本方案中,属性私钥的更新时间开销不会随着属性撤销发生次数的增加而增加,因为当某属性撤销发生多次后,非撤销用户首次请求访问文件后,此用户的属性私钥只要变更到最新版本号,在此过程中,授权中心只对该用户进行了一次属性私钥的更新。因此,在属性多次发生撤销时,授权中心的计算开销明显得到改善。通过以上实验结果,不难看出该实验成功验证基于属性加密的优化算法在属性撤销发生后大大减轻属性授权中心的计算开销。4.4本章小结本章通过对本文提出的基于属性加密方案进行详细的安全证明以及性能分析,安全证明证实该方案可以为云存储中的用户数据提供足够的安全性保证,性能分析说明该方案相对于其他方案,不仅通过引入多授权中心增加系统的安全性,而且在属性撤销时,通过引入属性分时撤销方法使得在基本不增加存储开销的情况下授权中心的计算开销大幅减少。38 第5章总结与展望第5章总结与展望5.1总结作为极具发展前景的信息技术,云计算已逐渐被人们所熟知和接受。但是在云计算的研究中,尚存一些未解决的难题。在云存储应用中,用户的数据存储在云服务器中,处于用户的控制之外,所以云用户担心其安全性。本文通过整理ABAC和ABE的研究,设计了一种新的应用于云存储的访问控制方案。具体工作如下:(1)本文设计的云存储访问控制的方案中,采用了线性秘密分享矩阵LSSS。相对于门限秘密分享方案,线性秘密分享矩阵LSSS表达内容更为丰富,它不仅可以表示门限函数,而且可以表示“AND”和“OR”等逻辑函数形式,这样就可以使得云数据的得到细粒度的访问控制。(2)本文设计的云存储访问控制的方案中,采用多授权中心的CP-ABE方案。相对于单授权中心的基于属性的加密方案,多授权中心可以大大增加系统的安全性。单授权中心的方案中,要求具有完全可信且具有强大的计算能力的授权中心,现实应用中不存在。而多授权中心基于属性加密方案中由于含有n个授权中心,所以当n-1个授权中心被破坏,那么攻击者仍然无法解密数据,这样就使得云存储的安全性得到提高。(3)本文设计的方案中,采用了一种解密外包的技术。相对于基本的基于属性加密方案,解密外包技术可以有效减轻用户解密时的计算开销。解密外包技术是将用户解密过程中的一部分工作交由云服务器来计算,云服务器会计算出一个解密令牌。然后,云服务器会把该解密令牌发送给用户,用户根据解密令牌进一步对密文解密,这样就使得云存储用户解密时的计算开销降低。(4)本文设计的方案中,设计了一种属性分时撤销方法。相对于以前的方案,属性分时撤销的方案能够有效减少属性撤销后AA的计算开销。在以前的方案中,由于属性撤销发生后,需要对所有的用户进行属性私钥的更新以及密文的更新。而属性分时撤销方案,是在属性撤销发生后,没有立即更新所有密文和所有用户的密钥,而是将用户分成四类,只有属性撤销用户初次访问文件时,才会跟新与属性相关的密文,然后非撤39 河北大学工学硕士学位论文销属性的用户访问时,才会更新访问用户的属性私钥。这样就将属性撤销发生后,密文和密钥的更新分时进行减少了授权中心的计算开销。5.2展望本文设计的访问控制方案在以下方面存在不足:(1)本文中所使用的访问结构是线性秘密分享矩阵,虽然该结构相对于门限秘密分享方案具有“AND”和“OR”的逻辑表达形式,但是没有考虑“NOT”的逻辑。如何在线性秘密分享矩阵中简单有效的表达出“NOT”逻辑是一个研究方向。(2)本文中采用的是多授权中心加密方案,虽然该方案在一定程度上增加系统的安全性,但是如何在所有的属性授权中心都被攻破后,攻击者依旧不能解密数据是进一步研究的内容。(3)本文中采用的属性分时撤销方案,虽然能在属性撤销时减少授权中心的计算开销,但是如何能够进一步减少属性撤销操作时给系统带来的计算开销,也需要进一步研究。40 参考文献参考文献[1]冯朝胜,秦志光,袁丁.云数据安全存储技术[J].计算机学报,2015,38(1):150-163.[2]张建勋,古志民,郑超.云计算研究进展综述[J].计算机应用研究,2010,27(2):429-433.[3]俞能海,郝卓,徐甲甲,等.云安全研究进展综述[J].电子学报,2013,41(2):371-381.[4]方巍,文学志,潘吴斌,等.云计算概念,技术及应用研究综述[J].南京信息工程大学学报自然科学版,2012,4(4):351-361.[5]张建勋,古志民,郑超.云计算研究进展综述[J].计算机应用研究,2010,27(2):429-433.[6]MellP,GranceT.TheNISTdefinitionofcloudcomputing[J].NationalInstituteofStandardsandTechnology,2009,53(6):50.[7]ZhengW,XuP,HuangX,etal.Designacloudstorageplatformforpervasivecomputingenvironment[J].ClusterComputing,2010,13(2):141-151.[8]周可,王桦,李春花.云存储技术及其应用[J].中兴通讯技术,2010(4):24-27.[9]黄格仕.云存储安全技术的研究[D].广州:华南理工大学,2012.[10]DasS,ChandrakarA,PradhanR.AReviewOnIssuesAndChallengesOfCloudComputing[J].InternationalJournalofInnovationsandAdvancementinComputerScience,2015,4(1):81-88.[11]于欣.云计算中的访问控制技术研究[D].西安:西安电子科技大学,2013.[12]冯登国,张敏,张妍,等.云计算安全研究[J].软件学报,2011,22(1).[13]RujS,StojmenovicM,NayakA.Privacypreservingaccesscontrolwithauthenticationforsecuringdatainclouds[C].Proceedingsof12thIEEE/ACMInternationalSymposiumonCluster,CloudandGridComputing(CCGrid).Ottawa:IEEE,2012.556-563.[14]冯朝胜,秦志光,袁丁,等.云计算环境下访问控制关键技术[J].电子学报,2015,43(2):312-319.[15]唐勇.基于属性加密的云数据访问控制研究[D].武汉:华中科技大学,2013.[16]卞一茗.基于混合属性的访问控制模型研究[D].南京:南京邮电大学,2012.[17]KuhnDR,CoyneEJ,WeilTR.Addingattributestorole-basedaccesscontrol[J].Computer,2010,43(6):79-81.[18]SahaiA,WatersB.Fuzzyidentity-basedencryption[C].ProceedingsofEUROCRYPT’05.Berlin:41 河北大学工学硕士学位论文Springer-Verlag,2005:457-473.[19]GoyalV,PandeyO,SahaiA,etal.Attribute-basedencryptionforfine-grainedaccesscontrolofencrypteddata[C].Proceedingsofthe13thACMconferenceonComputerandcommunicationssecurity.NewYork:AcmPress,2006:89-98.[20]BethencourtJ,SahaiA,WatersB.Ciphertext-policyattribute-basedencryption[C].ProceedingsofIEEESymposiumonSecurityandPrivacy.WashingtonDC:IEEEComputerSociety,2007:321-334.[21]ChaseM.Multi-authorityattributebasedencryption[M].TheoryofCryptography.SpringerBerlinHeidelberg,2007:515-534.[22]孙昌霞.基于属性的数字签名算法设计与分析[D].西安:西安电子科技大学,2013.[23]MüllerS,KatzenbeisserS,EckertC.Distributedattribute-basedencryption[M].InformationSecurityandCryptology–ICISC2008.SpringerBerlinHeidelberg,2009:20-36.[24]LinH,CaoZ,LiangX,etal.Securethresholdmultiauthorityattributebasedencryptionwithoutacentralauthority[J].InformationSciences,2010,180(13):2618-2632.[25]LewkoA,WatersB.Decentralizingattribute-basedencryption[M].AdvancesinCryptology–EUROCRYPT2011.SpringerBerlinHeidelberg,2011:568-588.[26]GoyalV,JainA,PandeyO,etal.Boundedciphertextpolicyattributebasedencryption[C].ProceedingsofICALP’08.Berlin:Springer-Verlag,2008:579-591.[27]YuS,RenK,LouW.Attribute-basedcontentdistributionwithhiddenpolicy[C].Proceedingsofthe4thWorkshoponSecureNetworkProtocols,Orlando,2008:39-44.[28]NishideT,YoneyamaK,OhtaK.Attribute-basedencryptionwithpartiallyhiddenencryptor-specifiedaccessstructures[C].ProceedingsofAppliedcryptographyandnetworksecurity.SpringerBerlinHeidelberg,2008:111-129.[29]苏金树,曹丹,王小峰,等.属性基加密机制[J].JournalofSoftware,2011,22(6).[30]王海斌,陈少真.隐藏访问结构的基于属性加密方案[J].电子与信息学报,2012,34(2):457-461.[31]陈勤,马丹丹,张金漫,等.隐藏访问策略的属性基加密机制[J].计算机应用,2011,31(11):2969-2972.[32]蔡红云,田俊峰.云计算中的数据隐私保护研究[J].山东大学学报(理学版),2014,9:013.42 参考文献[33]JungT,LiXY,WanZ,etal.Privacypreservingclouddataaccesswithmulti-authorities[C].Turin:INFOCOM,2013ProceedingsIEEE.IEEE,2013:2625-2633.[34]PirrettiM,TraynorP,McDanielP,etal.Secureattribute-basedsystems[C].Proceedingsofthe13thACMconferenceonComputerandcommunicationssecurity.ACM,2006:99-112.[35]BoldyrevaA,GoyalV,KumarV.Identity-basedencryptionwithefficientrevocation[C].Proceedingsofthe15thACMconferenceonComputerandcommunicationssecurity.ACM,2008:417-426.[36]LiangX,CaoZ,LinH,etal.Attributebasedproxyre-encryptionwithdelegatingcapabilities[C].Proceedingsofthe4thInternationalSymposiumonInformation,Computer,andCommunicationsSecurity.ACM,2009:276-286.[37]IbraimiL,AsimM,PetkovicM.Anencryptionschemeforasecurepolicyupdating[C].ProceedingsoftheSECRYPT’10.IEEE,2010:1-10.[38]LiuQ,WangG,WuJ.Time-basedproxyre-encryptionschemeforsecuredatasharinginacloudenvironment[J].InformationSciences,2014,258:355-370.[39]梁权.基于属性加密体制的访问控制研究[D].武汉:华中科技大学,2012.[40]RujS,NayakA,StojmenovicI.Dacc:Distributedaccesscontrolinclouds[C].ProceedingsofTrustCom’11.IEEE,2011:91-98.[41]LiM,YuS,ZhengY,etal.Scalableandsecuresharingofpersonalhealthrecordsincloudcomputingusingattribute-basedencryption[J].ParallelandDistributedSystems,IEEETransactionson,2013,24(1):131-143.[42]GreenM,HohenbergerS,WatersB.OutsourcingtheDecryptionofABECiphertexts[C].ProceedingsoftheUSENIXSecuritySymposium.2011:1-16.[43]YangK,JiaX.Dac-macs:Effectivedataaccesscontrolformulti-authoritycloudstoragesystems[M].SecurityforCloudStorageSystems.SpringerNewYork,2014:59-83.[44]江伟玉,刘丽敏,查达仁.面向云存储的访问控制服务研究[J].信息网络安全,2013(10):34-37.[45]熊智,王平,徐江燕,等.一种基于属性的企业云存储访问控制方案[J].计算机应用研究,2013,2:513-517.43 河北大学工学硕士学位论文致谢光阴似箭,时光如梭,硕士研究生生活接近尾声。其中,不管是学习上或者是生活上都获益良多。在论文创作中,得到老师和同学的帮助和关心,在此对老师、同学和家人致以诚挚的感谢。首先,衷心感谢我的导师刘振鹏教授。刘老师以精益求精钻研的态度,推陈出新的创意,对学生耐心地启发开导。在论文的写作过程中,刘老师细心指导每个细节,无论是选题、文献收集还是论文的修改都得到刘老师的悉心指导。在平时学习中,刘老师让我们参与项目,每周召开例会并参与讨论,为我们营造了一个良好的学习环境,使我养成了良好的学习习惯。在此,向刘老师致以最真挚的感谢。感谢项目组的所有老师们,李昆仑老师、杨晓晖老师,张寿华老师,李继民老师,杨文柱老师,张彬老师等在每次例会中,会为我指出研究中的不足,引导研究方向,提供技术支持,使我获益良多。感谢项目组的所有同学们,在和他们一起学习的日子里,我们不仅一起参加例会讨论,而且相互帮助共同提高。我们不仅培养了深厚的友谊,并且在老师们的指导下,都得到了很大的进步。还要感谢我的家人,在我读研这三年,他们总是义无反顾的鼓励着我。在我面对困难时,他们会为细心开导我,让我知道在我的背后永远有他们最坚定的支持。在我做出任何决定时,他们永远给予最大的理解。感谢我的舍友以及同学,正是由于你们,让我知道生活可以过得如此精彩无比,让我找到奋斗的目标。44 攻读学位期间取得的科研成果攻读学位期间取得的科研成果[1]LIUZP,ZHUXC,ZHANGSH.Multi-authorityAttributeBasedEncryptionwithAttributeRevocation[C]//ComputationalScienceandEngineering(CSE),2014IEEE17thInternationalConferenceon.IEEE,2014:1872-1876.[2]WANGZC,LIUZ,ZHUXC.RoutingalgorithmsanalysisforODMA-WiFisystems[C]//SoftwareEngineeringandServiceScience(ICSESS),20145thIEEEInternationalConferenceon.IEEE,2014:1122-1125.[3]2014年1月至2015年6月,参与国家科技支撑项目“组织机构代码管理系统功能提升关键技术研究”.45
此文档下载收益归作者所有