,,
(武汉大学 计算机学院,武汉 430072)
受益于电子设备制造成本的不断降低,支持高速网络通信(如3G/4G、wifi、蓝牙等)的移动连接设备在普通人群中的应用越来越普及。全球市场调研机构TrendForce最新报告显示,2015 年全球智能手机出货量为12.92亿台。这些具备高速通信能力的移动连接设备催生了移动互联网的诞生,并深刻改变了人们固有的生活方式。
一定群体内的人们会在某一时间聚集到某个固定地点进行活动,如一个公司的雇员在上班时间内都聚集在办公室,一个班级的学生在上课时间内都聚集在一个教室等。此种环境下,使用移动设备上的wifi和蓝牙等近距离无线通信技术[1],以ad-hoc形式连接成移动社交网络(Mobile Social Network,MSN)[2],即一种特定的“家庭共享”环境[3-4],就可以免费、自由地实现文件共享的目的。近年来,Google商店也出现了一些类似的应用。由于移动设备上的共享文件可能十分敏感,因此上述方式下的家庭共享模式必然会引发用户对于自身共享文件安全性的关注。文献[3,5-6]在对家庭环境下大量用户的分享习惯和态度进行调查后得出结论:在个人敏感信息越来越重要的现代社会,家庭共享环境下的资源共享,需要一个细粒度的访问控制机制。
更值得一提的是,当前已有的对家庭共享访问控制的研究[3-7],大多关注的是资源拥有者的共享资源安全性,而用户在共享者处获取资源时身份敏感信息的泄露却未引起注意。例如,一名医生使用智能手机将一些疾病的相关资料共享给一群病人时,在家庭环境下,他周围聚集着许多病人。当医生的设备屏幕上显示某个用户请求某份资料的信息时,对该病人来讲,他的身份信息传递给了医生,但是医生周围的病人通过医生的屏幕,也能看到该病人的请求信息,也即知道了该病人的疾病信息。造成上述用户身份隐私泄露的原因在于,访问控制的最终目的是让“合法并正确”的用户获取资源,而现有家庭文件共享的被动计算环境下,用户设备与文件拥有者设备之间是直连的,文件分享者需要验证用户所使用的设备是“合法并正确”的。尽管公钥基础设施(Public Key Infrastructure,PKI)身份认证机制[8-9]能够满足“合法并正确”的用户要求,但它会导致用户身份的泄露。直连的网络结构使得洋葱路由类机制[10-11]无法运行,而无线匿名身份认证技术[12-13]虽能保证用户身份的合法性和匿名性,但与访问控制中“正确”的用户要求相冲突。因此,在家庭共享环境下,如何在满足用户身份“合法并正确”的同时,保证用户身份的匿名性,给设计者带来了挑战。
基于上述问题,本文致力于解决家庭共享中保护用户身份隐私的细粒度访问控制问题。在家庭共享的实际应用中,文件拥有者倾向于将文件共享给自己周围的某一类人,而文件拥有者创建的临时热点密码很容易被周围未知用户知晓,在这种情况下,链路认证也起不到限制访问的作用。基于此,本文取消无线链路层的通信认证及加密,在共享文件与目的用户之间用一些语义上容易理解的属性集合关联并加以限定,文件在拥有者实际共享分发之前,使用属性标签关联的密钥加密,只有满足属性标签的用户才拥有解密密钥,用其对从文件拥有者处获取的文件进行解密,而其他不满足属性标签的用户则不能解密文件,从而实现细粒度的文件共享。
令G和GT为2个阶为素数p的乘法循环群,令g为G的生成元,双线性映射:G×G→GT是一个具有如下性质的映射:
2)非退化性。g∈G,e(g,g)≠1。
3)可计算性。存在一个有效的算法,可以从任意g∈G中计算出e(g,g)∈GT。
KP-ABE[14]是公开密码技术属性加密的一个重要分支,其被用来实施一对多加密,该加密性质决定了KP-ABE在数据发布系统[15-16]中有着广泛的应用前景。在KP-ABE中,每个属性的实现都有一个公开密码与之对应,数据使用某些属性的公开密码组合来加密。每个用户拥有一个使用自身属性集合构建的访问结构,该访问结构为一个线性共享矩阵,由结构化布尔访问策略(如访问结构树)转化而来,用户的私钥由访问矩阵生成,当且仅当与密文关联的属性满足访问矩阵的组合要求时,用户才能解密密文。KP-ABE由以下4个算法组成:
1)Setup(λ,U)→(PK,MK)
2)Encrypt(PK,M,S)→CT
3)Keygen(MK,A)→SK
⋮
4)Decrypt(SK,CT)→M
更详细的加、解密过程请参考文献[14]。实际上,属性加密还有一个重要分支:CPABE[17]加密算法,但该加密算法在加密消息时,需要加密者使用属性构建访问策略结构,这显然超出了非专业家庭共享人员的能力范围,因而不适用本文所述的应用环境。
为了让非专业的家庭共享者和用户在简单、快捷地共享文件时保障文件内容的私密性和用户的身份隐私,本文将家庭共享的计算环境再度转化为主动模式。具体来讲,首先运用移动设备使用wifi虚拟热点技术构建开放的无线AP,并将移动设备打造成移动文件服务器,此时用户就可以自由地连接到该无线AP上,并自主地获取所需文件;接着,文件共享者在自己的设备上将需要共享的文件使用相关属性进行加密,并将密文和对应属性关联起来,随后将这些文件和与之关联的属性描述以“文件服务器”的形式开启共享;最后,用户连接到共享者设备,并下载其“文件服务器”上的文件列表及对应属性描述,判断“文件服务器”上文件的属性描述是否满足自身访问结构,并从“文件服务器”上下载满足访问结构的密文及文件。
本文为了方便实验,假定在全局属性、文件关联属性和用户秘钥策略中,均没有重复属性。对于某一范围内的数值,可以采用文献[17]中的方法进行制定。表达式中的参数已经在第2节进行说明,其他符号说明如表1所示。对于本文所述的用户身份隐私,表1给出其定义。
表1 本文方案涉及的符号含义说明
图1所示为本文方案在系统层次上的共享结构,其反映了各个模块之间的关系。
图1 本文方案整体框架
本文方案具体过程如下:
1)系统初始化。可信第三方选择一个安全参数λ和全局属性集合U作为输入,调用Setup()函数,生成系统公开密钥PK和主密钥MK。公开密钥和属性可以采取推送服务或者Web服务的方式发布给参与各方。图1中“系统初始化”箭头部分给出了系统初始化的形象过程。
2)创建共享文件。文件拥有者将文件共享给用户前需要对文件进行如下操作:
(1)为此文件生成一个与已有文件不同的标识。
(2)选择此文件的访问属性,根据这些属性生成一个可审计的访问策略[18]并将其转化为相应的属性访问结构[19],调用Keygen()函数为用户生成一个私密密钥SK:SK←Kengen(PK,A)。
(3)随机选择一个GT上的元素作为文件加密对称密钥,并使用FIDi,key加密该文件。
重复步骤(1)~步骤(4)的操作直至所有的文件都处理完毕,随后生成2张列表,一张为文件访问信息表,包括文件标识(FID)和文件加密信息2个字段,该表提供给用户;另外一张为文件标识与文件密文存储路径信息表,称为文件存储信息表,该表由文件共享者持有。文件访问信息表的具体内容如表2所示,图1中“创建共享文件”箭头部分给出了文件创建的形象过程。
3)访问控制。在共享文件生成处理完成后,文件共享者开启移动设备虚拟AP功能并将文件访问信息表发布在搭建的移动存储设备上,然后通知周围用户下载。当成功连接到文件拥有者的设备后,用户首先获取文件访问信息表中文件关联属性,使用关联的属性集合和自动生成的访问结构作为输入,运行访问控制验证算法(FIDi,true/false)←CheckPolicy(FIDi,FSi,A),文献[14]指出当且仅当用户访问结构满足文件关联属性时,用于恢复属性秘密值的常量才能被计算出来。但该文献仅指出这些常量值可在多项式时间内进行计算,没有给出具体计算方法。本文给出一个基于线性方程组求解的多项式算法,用其验证访问策略并计算共享的秘密常量值,如下所示。
算法CheckPolicy(FIDi,FSi,A)
定义矩阵B和变量k=0;对于每个属性索引ρ(i)∈SU,B++k=Wj;定义一个k维向量X=(x1,x2,…,xk);令矩阵A=BT,向量ε=(1,0,…,0);
Begin
If 矩阵A和增广矩阵(A|ε)的秩不相等
Return false;
Else
解k元线性方程Ax=ε
对于每个属性索引ρ(i)∈SU,常量值wj=Xk
Return true并输出{wj}ρ(i)∈SU。
END
在验证完文件访问信息后,用户将可以访问的文件编号信息发送给文件拥有者,同时获取文件的属性密文,运行属性解密算法(FIDi,FIDi,key)←Decrypt(SK,FIDi,CTi)。
4)获取共享文件。用户获得文件FIDi所对应的文件加密密钥FIDi,key。图1中“访问文件”箭头部分给出了获取共享文件的形象过程。
3.1.1 文件拥有者接口
如图2所示,文件拥有者的界面上有一个资源预览界面,文件被初步划分为图像、媒体和文档3类。
图2 文件拥有者接口界面
为了简化软件,假定文件拥有者有10个属性A0~A11,且文件拥有者只用“and”属性来生成访问结构。当文件拥有者长按选中某个文件后,软件会弹出一个全局属性列表,文件拥有者根据文件内容选择相关属性,点击“确定”后,文件将使用这些属性进行加密。如图2中,文件拥有者对该文件使用了“A0 and A1 and A2”的访问结构,即只有满足“A0 and A1 and A2”的用户才能接收和解密该文件。
在文件服务界面,用户点击开启服务选项,虚拟热点将会被打开,同时共享文件信息将会发布。
3.1.2 用户接口
用户在连接到文件拥有者的AP后,在用户界面上只需开启“获取文件信息表”选项,就能知晓自己可以访问的文件,随即从文件拥有者处下载该文件。解密后,文件将被展现在资源预览界面。用户接口如图3所示。若用户满足“A0 and A1 and A2 ”的访问结构,则只能看到满足“A0 and A1 and A2”访问结构的文件。
图3 用户接口界面
3.2.1 用户身份隐私
假设文件拥有者附近只有一个用户,则显然用户在文件拥有者处不存在身份隐私。在存在多用户的环境下,使用信息论中的熵来度量用户身份隐私的保护程度,在一个存在N个用户的共享环境下,本文方案中用户UIDi能获取的身份隐私最大保护度为:
在所有用户身份隐私都得到最大保护的情况下,系统能够获得的隐私保护程度为:
3.2.2 数据机密性
定理1当G上决策判定性BDH假设成立时,本文所提方案在选择性安全模型下,具有抗选择明文攻击(Chosen-Plaintext Attack,CPA)能力。
证明:在本文方案中,文件使用对称密钥加密,假设对称密钥加密是安全的,则数据机密性依赖于KP-ABE算法的安全性。对于KP-ABE算法的安全性,文献[14]已经给出证明。给定决策BDH假设,在选择安全模型下,文献[14]所提出的KP-ABE算法是抗CPA的。本文方案与文献[14]具有相同的安全性,因此,本文方案也具有抗CPA能力。
定理2本文的共享访问控制机制对于未授权的访问是安全的。
证明:未授权的用户分为两类,一类用户是合法的但没有足够的属性满足访问结构,想使用已有的属性密钥获取文件的内容;另一类用户是不属于系统的非法用户,但其仍然想获取文件的内容。对于第一类合法用户,在属性不满足访问结构的条件下,其没有足够的属性私钥恢复出加密密钥,而且因为不同用户在相同属性上的属性私钥不同,所以多个属性不满足访问结构的用户即使进行合作也不能恢复出加密密钥;对于第二类用户,即使获取了文件,但由于没有解密密钥,即不能得出文件加密密钥,因此文件内容也对其不可见。因此,本文的访问控制机制可以安全对抗未授权访问。
3.2.3 计算效率
为了验证本文方案的实际可操作性,在文献[17]基于LSSS密钥共享的KP-ABE加密算法库基础上,给出其运行在手机端的加解密性能。手机的硬件参数:魅族定制版(A17 2.2 GHz×4 + A7 1.7 GHz×4),CPU为MediaTek 6595,内存为2 GB 双通道 LPDDR3,933 MHz,操作系统为Android 5.1,代数库使用Java Pairing-Based Cryptograpy Library(JPBC),版本为1.2.1。使用基本域大小为512 bit、阶为160 bit的Type A对称曲线。图4和图5所示为不同属性个数下加、解密所需要的时间。
图4 加密时间与属性个数的关系
图5 解密时间与属性个数的关系
为在开放直连的家庭共享网络下实现简单、高效的细粒度家庭文件共享访问,同时针对此环境下的用户身份隐私保护问题,本文在把计算环境转化为主动后,提出一个使用KP-ABE算法的共享方案,并设计一套原型软件验证该方案的可行性和实用性。本文方案还存在以下不足:首先,该方案属性密文长度仍较长;其次,在用户进行策略验证时,需要验证文件访问信息表中所有条目,当共享文件数量较大时,所需要的验证时间较长。因此,解决上述2个问题将是下一步的研究方向。
[1] HAN B,HUI P,KUMAR V S A,et al.Mobile data offloading through opportunistic communications and social participation[J].IEEE Transactions on Mobile Computing,2012,11(5):821-834.
[2] ADOMAVICIUS G,TUZHILIN A.Toward the next generation of recommender systems:a survey of the state-of-the-art and possible extensions[J].IEEE Transactions on Knowledge and Data Engineering,2005,17(6):734-749.
[3] MAZUREK M L,ARSENAULT J P,BRESEE J,et al.Access control for home data sharing:attitudes,needs and practices[C]//Proceedings of SIGCHI Conference on Human Factors in Computing Systems.New York,USA:ACM Press,2010:645-654.
[4] DEARMAN D,PIERCE J S.It’s on my other computer!:computing with multiple devices[C]//Proceedings of SIGCHI Conference on Human Factors in Computing Systems.New York,USA:ACM Press,2008:767-776.
[5] LEKAKIS V,BASAGALAR Y,KELEHER P.Don’t trust your roommate or access control and replication protocols in home environments[C]//Proceedings of USENIX Conference on Hot Topics in Storage and File Systems.[S.l.]:USENIX Press,2012:12-17.
[6] KIM T H J,BAUER L,NEWSOME J,et al.Challenges in access right assignment for secure home networks[C]//Proceedings of USENIX Conference on Hot Topics in Security.[S.l.]:USENIX Press,2010:1-6.
[7] KIM T H J,BAUER L,NEWSOME J,et al.Access right assignment mechanisms for secure home networks[J].Journal of Communications and Networks,2011,13(2):175-186.
[8] ADAMS C,LLOYD S.Understanding PKI:concepts,standards,and deployment considerations[M].[S.l.]:Addison-Wesley Longman Publishing Co.,Inc.,2002.
[9] TOORANI M,BEHESHTI A.LPKI-A lightweight public key infrastructure for the mobile environments[C]//Proceedings of the 11th IEEE Singapore International Con-ference on Communication Systems.Washington D.C.,USA:IEEE Press,2008:162-166.
[10] 李勤祎.基于属性的加密算法研究[D].成都:电子科技大学,2013.
[11] 余敏达.基于属性的加密体制研究与实现[D].济南:山东大学,2013.
[12] 屈 娟,张建中.基于双线性对的动态广义秘密共享方案[J].计算机应用,2010,30(11):3036-3037.
[13] LI C T,LEE C C.A novel user authentication and privacy preserving scheme with smart cards for wireless com-munications[J].Mathematical and Computer Modelling,2012,55(1):35- 44.
[14] HOHENBERGER S,WATERS B.Attribute-based encryption with fast decryption[C]//Proceedings of the 16th International Conference on Practice and Theory in Public-Key Cryptography.Berlin,Germany:Springer,2013:162-179.
[15] HUR J,NOH D K.Attribute-based access control with efficient revocation in data outsourcing systems[J].IEEE Transactions on Parallel and Distributed Systems,2011,22(7):1214-1221.
[16] YANG K,JIA X,REN K.Attribute-based fine-grained access control with efficient revocation in cloud storage systems[C]//Proceedings of the 8th ACM SIGSAC Symposium on Information,Computer and Communica-tions Security.New York,USA:ACM Press,2013:523-528.
[17] BETHENCOURT J,SAHAI A,WATERS B.Ciphertext-policy attribute-based encryption[C]//Proceedings of IEEE Sympo-sium on Security and Privacy.Washington D.C.,USA:IEEE Computer Society,2007:321-334.
[18] LI J,WANG Q,WANG C,et al.Enhancing attribute-based encryption with attribute hierarchy[J].Mobile Networks and Applications,2011,16(5):553-561.
[19] LIU Z,CAO Z.On efficiently transferring the linear secret-sharing scheme matrix in ciphertext-policy attribute-based encryption[EB/OL].[2016-11-02].https://pdfs.semanticscholar.org/8f05/02461693d016c 6a46b73ad20f4fc23f45c54.pdf.