一种基于表格属性的云存储密文访问控制系统的制作方法_2

文档序号:9420299阅读:来源:国知局
阔值是否为1、来对各叶 子节点进行分类,并进一步根据父节点类型的不同、对父节点的阔值为1的叶子节点的集 合进行分类,之后根据分类结果对会话密钥加密W得到会话密钥密文,之后将会话密钥密 文和加密后的数据上传到云端。
[0030] 当共享用户从云端下载数据时,共享用户运行客户端12,从云端下载会话密钥密 文和对应的共享数据,并当与自身用户私钥相关联的属性满足访问结构树时,由会话密钥 密文解密得到会话密钥,之后利用解密得到的会话密钥解密对应的共享数据。
[0031] 本发明提供的基于表格属性的云存储密文访问控制系统中,数据属主在加密过程 中,根据访问结构树上每一叶子节点对应的父节点的阔值是否为1、来对各叶子节点进行分 类,并进一步根据父节点类型的不同、对父节点的阔值为1的叶子节点的集合进行分类,之 后根据分类结果对数据加密后上传至云端。运样,数据属主得到的密文长度、加密计算量 和后续共享用户的解密计算量均只与父节点阔值不为1的属性集合有关,而在访问结构树 中,阔值为1对应或n,否则对应与n,因此可W说,系统开销只与父节点为与口的属性集 合有关,当访问结构树中的或口增加时,相对于现有的CP-ABE方案,系统的计算代价和通 信开销将大为降低,从而能够更高效的为用户提供隐私保护、数据共享与访问控制服务。
[0032] 图2示出了本发明提供的基于表格属性的云存储密文访问控制系统的访问控制 方法的流程,包括W下步骤:
[0033] Sl:认证中屯、运行管理端11,生成系统公钥与主私钥,将系统公钥上传至云端。
[0034] 进一步地,生成系统公钥与主私钥的步骤又可包括W下步骤:
[0035] Sll :定义麟是阶为素数P的双线性群,g为的生成元。定义双线性映射 e:拉。:,:好:化矿^挪是一个哈希函数。定义系统的属性空间I/ =的,…,t/,,,},: 对于€:?,与属性集合S,属性集合及。[/ :,定义拉格朗日系数
[003引S12 :输入安全参数A,选择随机数:,并计算h=gP,U=旨°和V= e(邑,gr,进而根据公式fK=促。,涅,私句得到系统公钥PK,并根据公式MK= ( 0,U)得到主 私钥MK。
[0037] S2 :认证中屯、运行管理端11,根据用户发出的系统加入请求,认证用户是否为合 法用户,并当用户为合法用户时,计算用户的用户私钥,并分发给用户。
[0038] 进一步地,计算用户的用户私钥的步骤又包括W下步骤:
[0039] S21 :认证中屯、利用属性空间U,根据用户的角色或身份,为用户分配相应的属性 集合S,属性集合S C必6
[0040] S22 :输入主私钥MK和用户的属性集合S,为用户选取随机数r € Z,。,并为属性集 合S中的每一属性j G S选取随机数E Sp:,依照下式计算用户私钥SK:
[0041] SK =(D= g("r)/e,
[004引V/ G 5': 二g' .//(./)',£>, = '巧W(/片化(/))',0,' = g')
[0043] 其中,type (j)为属性j所在的表格口类,D为双线性群Gn上的元素,Dj为双线性 群拉。上的元素,爲为双线性群恩。上的元素,D'为双线性群沿。上的元素。
[0044] S3:数据属主运行客户端12,对需上传的数据选取会话密钥并进行加密,之后根 据访问结构树上每一叶子节点对应的父节点的阔值是否为1、来对各叶子节点进行分类,并 进一步根据父节点类型的不同、对父节点的阔值为1的叶子节点的集合进行分类,之后根 据分类结果对会话密钥加密W得到会话密钥密文,之后将会话密钥密文和加密后的数据上 传到云端。
[0045] 进一步地,步骤S3又包括W下步骤:
[0046] S31:数据属主运行客户端12,选取会话密钥Ck,并采用对称加密算法加密需上传 的数据M,得到加密后的数据Etk (M)。
[0047] S32 :输入系统公钥PK、会话密钥ck、W及访问结构树T,对于访问结构树了中的 每个节点X,设置其孩子节点数为nmv设置其阔值为ty,且有0 < num、,定义多项式Qy 的度为屯,且屯二t X-I,节点X的孩子节点依次标记序号为1,…,nunv index (X)为返回节 点X的序号,att (X)为返回与节点X相关联的属性,type (att (X))为返回属性att (X)所在 的表格口类,之后对于访问结构树了的根节点,选取随机数S e马,并设定Qu(O) = S,进一步 随机选择屯个子节点来完整定义多项式q?,对于访问结构树r的除根节点W外的其它节点 X,设定Qx(O) =Qparent (index (X)),进一步随机选择屯个子节点来完整定义多项式Qx。其中 系统的公钥PK是由数据属主从云端下载而得到的。
[0048] S33:对于访问结构树T的叶子节点X,若叶子节点X的父节点parent (X)的阔值 tparentW=1,则Qx(O) = QparentW(O),令Yi为访问结构树T中该类叶子节点的集合、Yz是访 问结构树了中余下的叶子节点的集合,并进一步根据Yi中各叶子节点的父节点类型的不 同,将Yi划分为Yii,Yi2,…。
[0049] S34:根据如下公式对会话密钥加密,计算得到会话密钥密文CT:
[0050] CT=巧怎二Ck.L气g,洗、X' 二h\
[0051]Vv€>;^(/= K2....);C=〇.. 'I ,'"',(?;= //(的乂;("'7〇〇))","'、
[0052] V'v e K : C,=g'/'W,C;' =i/(備
[0053] 其中,泛为对会话密钥的计算,C为对根节点的计算,Cy为对属性y对应的属性值 的计算,C'y为对属性y所在表格口类的计算。特别地,Y。中的所有叶子节点具有相同的 Cy,若不同叶子节点的属性属于相同的类型,则它们具有相同的C'y。
[0054] S35 :将会话密钥密文CT和加密后的数据Etk(M)上传到云端。
[00巧]S4 :共享用户运行客户端12,从云端下载会话密钥密文和对应的共享数据,并当 与自身用户私钥相关联的属性满足访问结构树时,由会话密钥密文解密得到会话密钥,之 后利用解密得到的会话密钥解密对应的共享数据。
[0056] 进一步地,步骤S4又可包括W下步骤:
[0057] S41 :共享用户运行客户端12,从云端下载会话密钥密文CT和对应的共享数据 Eek(M),并输入系统公钥PK、用户拥有的属性集合S所对应的私钥SKs、W及密钥密文CT。
[0058] S42 :共享用户调用预先定义的递归函数D化'/'巧此Vo(.切'CT,5乂',.v) = (啦、r,,yr'"|,若 共享用户的属性集合S满足访问结构树r,则计算解密信息A为:
[0059] ^二Z)。":''八,V化/['(('T'撕./《)=.別I'?…)=[結.別"
[0060] 本发明中,递归函数DecryptNode(CT,SK,X)的定义如下:
[0061] a、如果节点X是叶子节点,且其父节点的阔值kx> 1,则定义:
[0062]
[0063] b、如果节点X是叶子节点,且其父节点的阔值kx= 1,则定义:
[0064]
[006引C、如果节点X是非叶子节点,对节点X的所有子节点Z,递归调用Dec巧PtNode(CT,SK,Z)并输出F,。定义Sx是任意tX个节点Z的集合,且F,声丄,依照下式 计算Fy,若找不到满足条件的Sy集合,则FX=丄: 巧=11 厂:' 、vhen>i=in(kv({z),S、二 \inck>x(z)\ 二居Sy 二n(e(g,g)"'"V-'w 玄e这、.
[眶]=n((化却'"(V-W 二居S、 .?YC/ (O)A,(0) =e(g,g)--。' '' 二如各,各r W
[0067] S43 :根据下式对会话密钥密文CT解密,得到会话密钥Ck:
[0068]
[0069] S44:根据解密得到的会话密钥Ck和共享数据Eek(M),解密得到数据M。
[0070] W下对上述基于表格属性的云存储密文访问控制系统的访问控制方法的效率进 行分析:
[0071] 定义G。和码表示群上的点乘运算,C。表示双线性对运算。令码与招1中元素长度 分别为A;。与Av %是有限域%上元素的长度。定义A。是密文C所包含的属性集,Aci是 父节点阔值为1的属性集且N为满足条件的父节点个数,A^2是父节点阔值大于1的属性集, 于是有IAtI = IAuHAtzI。定义A。是用户属性集,S表示满足访问结构的最小属性集合。 本发明与经典BSW07方案的效率对比分析如下表2所示:
[007引表2
[0073]
[0074] 根据如上表2所示,对比BSW07方案和本发明
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1