-
摘要:
多视图聚类旨在利用来自不同视图的异构信息发现底层数据结构,并划分样本所属类别. 一致性和互补性是影响多视图聚类性能的2个关键要素. 一致性强调不同视图间的语义相似性,互补性则强调每个视图内特有信息的相互补充. 目前对一致性研究已相对深入,但对互补性研究存在争议,其中一些方法认为一致性和互补性能互助,但仅将二者约束至同一特征空间中实际上造成了二者的冲突. 而另一些方法则据此认为应丢弃互补信息,但这又造成信息浪费. 直觉上互补性应该存在,贡献在于发现了现有方法没有足够洞悉并触及到互补性的本质,即一致性和互补性并非独立而是相互耦合,结果导致冲突. 受此启发,通过解耦实现了2种信息的分离,具体使它们位于不同的特征子空间而非现在的同一特征空间,从而发展出了一种兼顾一致性和互补性的多视图聚类算法,在有效提取出互补信息的同时避免二者冲突. 在标准数据集上的对比实验验证了所提算法的有效性.
Abstract:Multi-view clustering aims to use heterogeneous information from different views to discover the underlying data structure and divide the samples into clusters. Consistency and complementarity are two key elements that affect the performance of multi-view clustering. Consistency emphasizes the semantic similarity between different views. Complementarity emphasizes the mutual supplementation of specific information within each view. At present, the study of consistency has been relatively in-depth, but the study of complementarity is controversial, in which some methods believe that consistency and complementarity can assist each other, but constraining them to the same feature space actually causes a conflict between them. Other approaches accordingly argue that complementary information should be discarded, but this would result in a waste of information. Intuitively, complementarity should exist. The contribution of this paper is to find that existing methods do not have enough insight into the essence of complementarity, i.e., consistency and complementarity are not independent but entangled with each other, which results in conflict. Motivated by this finding, we realize the separation of the two kinds of information through disentangling, specifically making them located in different feature subspaces instead of the same feature space, thus developing a multi-view clustering algorithm that takes into account both consistency and complementarity, effectively extracting the complementary information while avoiding the conflict between consistency and complementarity. Comparative experiments on standard datasets demonstrate the effectiveness of the proposed algorithm.
-
物联网(Internet of things, IoT)应用广泛,包括智慧交通、智慧医疗、智慧家居等多个领域[1]. 随着物联网设备的不断增加,物联网数据共享的需求也日益增加. 然而,物联网数据共享仍存在安全和隐私保护等问题,这严重阻碍数据分享者的积极性[2]. 访问控制是确保数据不被未授权者访问的一种重要方法,区块链与访问控制的结合有2个方面:一是实现去中心化的访问控制模型,解决物联网场景下中心化访问控制的安全和效率问题;二是对基于属性的访问控制进行安全性增强,实现去中心化的授权中心[3].
Sahai等人[4]提出属性基加密(attribute-based encryption, ABE)的概念,把如何构建多授权机构ABE方案作为急需要解决的问题.Chase[5]首次提出了多授权机构CP-ABE方案,其授权机构由1个权威机构(certification authority,CA)和多个属性机构(attribute authority,AA)组成. CA负责为用户分发身份相关的密钥,AA负责为用户分发属性相关的密钥,该方案中每个数据用户通过全局唯一身份标识(global unique identifier, GID)表示其唯一性;但是该方案中仍然存在一个解密能力极强的CA,无法实现真正意义上的无中心化. 为了解决该问题,Lin等人[6]采用密钥分发和联合零秘密共享技术,提出了一种无CA的多授权机构ABE. 在CP-ABE方案中,数据拥有者加密数据前首先根据自身需要制定相应的访问控制策略,然后基于该策略加密明文数据(访问控制策略以明文的形式隐含在密文数据中). 但是,在物联网中的许多应用中,访问控制策略本身包含大量的隐私数据. 例如:某医院将所有注册病人的医疗信息托管给第三方存储,为了保护病人的个人隐私,使用病人姓名、身份证号、就诊医院及科室等属性字段为每个用户的医疗信息进行加密. 在这些属性中身份证号、科室相对其它属性是比较敏感的,如若得知病人所属科室为精神科,那么由属性可以判断出此病人极有可能存在精神方面的问题. 因此,实现隐藏访问策略有助于保护物联网中的隐私信息.
Zhang等人[7]采用布隆过滤器(Bloom filter, BF)并搭配线性秘密共享方案,提出一种针对物联网数据的部分策略隐藏方案. 该方案将属性值隐藏在BF中,且能够抵抗访问策略猜测攻击和字典攻击. 王悦等人[8]提出一种隐藏访问策略的高效CP-ABE方案. 该方案利用合数阶双线性群构造了一种基于包含正负及无关值的“与门”的策略隐藏方案,使得属性隐藏和秘密共享能够同时应用到“与门”结构中;能有效地避免用户的具体属性值泄露给第三方,确保用户隐私的安全. 为了解决车联网环境下跨信任域数据共享中跨域数据泄露严重的问题,刘雪娇等人[9]提出了一种区块链架构下高效的车联网跨域数据安全共享方案. 不同信任域的可信机构构成区块链,采用改进的CP-ABE加密数据,结合区块链和星际文件系统(InterPlanetary file system, IPFS)进行存储,构建了基于区块链的跨域数据细粒度、安全共享方案. Dai等人[10]提出一种新的数据访问控制策略. 首先设计基于属性的Merkle树结构保存用户属性,然后基于该Merkle树构造零知识证明,有效存储用户属性进行零知识证明验证,验证者只知道用户满足策略要求,而不知道用户拥有哪些属性,从而达到策略隐藏的目的. 访问策略隐藏的CP-ABE方案是研究热点,科研人员不断地提出实现方案[11-14].
现有的策略隐藏CP-ABE方案分为完全隐藏[15]和部分隐藏[16]. 完全隐藏访问策略意味着不暴露访问策略中的属性信息,而部分隐藏访问策略意味着只隐藏敏感属性值. 对于物联网环境来说,访问策略的任何信息泄露都有可能对数据拥有者的隐私产生威胁. 另外,提升数据共享效率的方案大都忽略了秘密分发者的负担. 因此,本文在文献[17]的基础上,进一步提出一种策略完全隐藏且高效的多授权机构CP-ABE方案. 本文的贡献有3个方面:
1) 策略完全隐藏. 基于联盟链可以更好地保护隐私数据且更具有灵活性的特点,提出一种策略完全隐藏的高效多授权机构CP-ABE物联网数据共享方案.
2) 多秘密共享. 根据多秘密共享算法改进多授权机构CP-ABE方案提升数据共享的效率以及增强细粒度访问控制,即在一次数据共享过程中实现多份数据的共享,而且每份共享数据各有不同的门限访问结构.
3) 利用MurmurHash3算法实现访问策略的完全隐藏,由于哈希算法具有不可逆性,能有效防止从访问策略中推断出任何有价值的信息.
1. 预备知识概述
1.1 多授权机构CP-ABE
Lewko等人[18]提出了一种新型的“去中心”的多授权机构属性加密(decentralized multi-authority attribute-based encryption)方案. 该方案同样不需要CA的参与,任何实体不需要全局合作就能成为AA,并独立分发密钥,用户可以根据自身情况选择相信AA. 该方案定义为:
1) GlobalSetup(λ)→GP. 该算法为全局设置算法,由参与系统建立阶段的可信第三方执行,以安全参数λ为输入,输出系统公共参数GP.
2) AuthoritySetup(GP)→(SK,PK). 该算法为机构设置算法,每个属性机构以GP为输入进行初始化,输出该属性机构的私钥SK和公钥PK.
3) Encrypt(M,(A,ρ),GP,{PK})→CT. 该算法为加密算法,以明文M、访问结构(A,ρ)、GP和相关属性机构的公钥PK为输入,输出密文CT.
4) KenGen(GID,i,SK,GP)→Ki,GID. 该算法为密钥生成算法,以用户身份GID、GP、属性 {\boldsymbol{i}} 和相关属性机构的私钥 S K 为输入,输出该用户的属性 {\boldsymbol{i}} 对应的私钥 K_{i, GID} .
5) {Decrypt}\left(C T,\left\{K_{i, GID}\right\}, G P\right) \rightarrow M . 该算法为解密算法,以 G P 、 C T 和用户 { GID } 的私钥集合 \left\{K_{i, GID}\right\} 为输入. 若该用户的属性集合满足访问结构,则解密成功,输出明文 M ;否则,解密失败.
1.2 多秘密共享算法
秘密共享作为保护敏感信息的重要工具,被广泛应用于门限数字签名[19]、多方安全计算[20]和密钥协商[21]等. 对单秘密共享方案来说,参与者1次只能实现1个秘密的共享,虽然共享多个秘密可以通过多次秘密共享实现,但是这样不仅加大了秘密分发者和参与者的负担,还增加了秘密共享实现的代价. 因此,1次共享单个秘密已经无法满足人们对于秘密共享的要求.2000年左右,多秘密共享概念被提出,即多个秘密在1次秘密分发过程中实现共享,拓宽了秘密共享的应用范围. 本文采用文献[22]基于中国剩余定理和Shamir门限方案提出的一种门限可变的多秘密共享(changeable threshold multi-secret sharing, CTM-SS)方案. 该方案共享多组秘密只需1次秘密分发过程,且各组秘密可有不同的门限访问结构.
1.3 MurmurHash3算法
MurmurHash是一种非加密型哈希函数,适用于一般的哈希检索操作. 由Austin Appleby在2008年发明,与其它流行的哈希函数相比,MurmurHash的随机分布特征表现更好. MurmurHash3是MurmurHash的第3个版本,支持128 b,碰撞概率大大降低,在0~108范围内几乎不存在碰撞[23].
2. 策略隐藏的高效多授权机构CP-ABE物联网数据共享方案
2.1 方案模型
策略隐藏的高效多授权机构CP-ABE物联网数据共享方案模型如图1所示,方案模型包含的实体主要有:可信第三方(trusted third party,TTP)、AA、数据拥有者(data owner, DO)、数据用户(data user, DU)、IPFS和联盟链(consortium blockchain, CB).
TTP只参与系统初始化阶段的全局参数生成算法,为AA生成其对应的公钥和私钥提供参数.
AA主要承担属性管理工作以及为DU生成属性私钥. 该模型中存在多个AA,用户属性被多个AA共同管理,既可解决单AA存在的密钥托管问题而提高系统安全性,又可以提高系统性能.
DO先使用高级加密标准(advanced encryption standard,AES)算法加密要共享的数据,1次共享多份数据,并且每份数据的对称密钥和门限可以不同. 然后,DO根据自身意愿制定相应的访问策略,实施以自己为中心的数据访问控制. 本文方案会自动将DO设置的每个属性信息通过MurmurHash3算法隐藏起来,即访问策略中只存储属性信息对应的哈希值,不存储明文属性信息,保护了物联网环境下访问策略的安全性和隐私性. 最后,基于隐藏属性的访问结构对密钥集合进行加密,将对称密钥集合密文、密钥和密文哈希值对应关系(每份数据加密的密钥和密文存储至IPFS形成的哈希值一一对应)上传至CB,方便DU根据重构出的对称密钥解密对应的数据密文.
DU根据实际情况选择相信某些AA,并利用这些AA颁发的密钥解密对称密钥集合密文. 若用户属性集满足隐藏属性的访问结构,则可以从对称密钥集合密文中解密出自己所需的对称密钥,用来解密对应的数据密文,反之解密失败. DU可以根据各自的属性集解密出DO共享的部分或全部数据.
IPFS可能会对用户的数据内容感到好奇,甚至擅自将数据泄露给DO的竞争对手以获取不当利益. 因此,本文方案只存储数据密文至IPFS.
CB是指由多个机构共同参与管理的区块链,用户节点只有满足指定CB的准入机制才能加入区块链. 与公有链相比,CB可以更好地保护隐私数据且更具灵活性. 由于区块链上空间有限,CB只存储密钥和密文哈希值的对应关系及对称密钥集合密文. 密钥和密文哈希值的对应关系是利用哈希表来存储的,其中键为密文哈希值索引、值为对应的密文哈希值. 本方案中密文哈希值索引是自增的,不会出现键冲突的情况,因此可以根据密文哈希值索引得到对应的密文哈希值.
2.2 方案构造
现有的基于CP-ABE算法的数据共享方案中,采用的都是单秘密共享算法,即1次秘密共享过程只能共享1个秘密. 如果要共享另一个秘密,秘密分发者必须为所有的参与者重新分配新的秘密份额,而且多次秘密分发会加重秘密分发者的计算开销. 本文采用多秘密共享算法,不仅实现1次数据共享过程共享多个秘密,而且秘密份额也得到了重用,数据共享效率更高. 本文方案分为:系统初始化、数据加密和数据解密3个阶段.
2.2.1 系统初始化
1) 全局参数生成
TTP执行全局设置算法 { Global \;S etup }(\lambda) \rightarrow G P ,以安全参数 \lambda 为输入,输出系统全局公共参数 G P .
① 选择一个阶为 N=p_{1} p_{2} p_{3} 的双线性群 G ,其中 p_{1}, p_{2}, p_{3} 为3个素数;
② 选择一个将全局身份 { GID } 映射到群 G 中的哈希函数 H:\{0,1\}^{*} \rightarrow G ;
③ 输出全局公共参数 G P=\left\{N, g_{1}, G_{p_{1}}, H\right\} ,其中 g_{1} 为 G_{p_{1}} 的生成元, G_{p_{1}} 为 G 的子群.
2) AA参数生成
每个AA执行机构生成算法 { Authority } {Setup} (G P) \rightarrow (S K, P K) 进行初始化,生成该AA的公钥 P K 和私钥 S K .
① 对于每一个属性 i ,AA随机选取2个指数 \alpha _{i}, y_{{i}} \in Z_{N} ;
② 输出该AA的公钥PK = \left\{e\left(g_{1}, g_{1}\right)^{\alpha_{1}}, g_{1}^{y_{i}} \forall i\right\} 和私钥S K = \left\{\alpha_{i},y_{i} \forall i\right\}.
2.2.2 数据加密
1)数据对称加密
DO使用AES算法加密要共享的物联网数据,由于1次共享过程可以共享多份数据,因此用来加密数据的对称密钥也就存在多个. 数据密文会被存储到IPFS中,DO会接收到IPFS返回的数据密文哈希值.
2)隐藏属性的访问策略构建
访问策略是整个秘密共享算法的访问控制中心,用于表明哪些参与者(属性)可以合作恢复所共享的秘密. 哪些参与者合作不能恢复秘密. 在访问结构中,叶子节点表示参与者,非叶子节点表示门限. 例如(2,3)门限,表示任何2个及以上参与者联合才可以恢复所共享的秘密. 使用128 b MurmurHash3算法隐藏属性的访问策略如图2所示.
在构建访问策略过程中,需要将根节点的秘密值(对称密钥集合)递归地分发给每个节点,分发采用CTM-SS[22]方案中的秘密分发算法来实现. 该秘密分发算法如算法1所示. 设 n 个参与者构成的集合为 P=\left\{P_{1}, P_{2}, …, P_{n}\right\} , S 表示秘密集合,设G_{1}= \{k_{1,1}, k_{1,2}, …, k_{1, p_{1}}\}, G_{2}=\left\{k_{2,1}, k_{2,2}, …, k_{2, p_{2}}\right\} ,G_{m}=\left\{k_{m, 1}, k_{m, 2}, …, k_{m, p_{m}}\right\} \subset S为 m 组需要共享的秘密. 每组 G_{i} 包含的秘密个数可以不同,这里假设 1 \leq p_{1} \leq p_{2} \leq … \leq p_{m} ,并根据不同的 \left(t_{i}, n\right) (1 \leq i \leq m) 门限结构进行共享,其中门限值满足 1 \leq t_{1} \leq t_{2} \leq … \leq t_{m} .
算法1. 秘密分发算法.
输入: S, p_{i}, t_{i}, m, n ;
输出:每个参与者分配的子份额 y_{{i}} .
① 选择 m 个素数 q_{1}<q_{2}<…<q_{m} ,满足{k}_{{i} ,{j}} < {q}_{{i}} \left(1 \leq i \leq m, j=1,2, …, p_{i}\right) , n<q_{1} 和 p_{m}<q_{1} ;
② 若 p_{m}>t_{1} ,还需 p_{m}-t_{1}+1+n<q_{1} ;
③ {\rm{i f}}\left(p_{m} > t_{1}\right)
④ 选择 n 个不同的整数 x_{1}, x_{2}, …, x_{n} 作为参与者 P 的公开身份标识信息, x_{i} \in\left[p_{m}-t_{1}+1, q_{1}\right) ;
⑤ \text { else }
⑥ 选择 n 个不同的整数 x_{1}, x_{2}, …, x_{n} 作为参与者 P 的公开身份标识信息, x_{i} \in\left[1, q_{1}\right] ;
⑦ end if
⑧ 令 a_{0}, a_{1}, …, a_{p_{m}-1} 分别为 {p_m} 组恒等式的解;
⑨ { for\; ( i=0; i < p_{m}-1 ; i+ + )}
⑩ \left\{\begin{array}{c}a_{i}\equiv k_{1, i+1} \bmod q_{1}, \\a_{i}\equiv k_{2, i+1} \bmod q_{2}, \\\vdots \\a_{i}\equiv k_{m, i+1} \bmod q_{m},\end{array}\right. 若 k_{1, i+1}, k_{2, i+1}, …, k_{m, i+1} 不存在, 令 k_{1, i+1}, k_{2, i+1}, …, k_{m, i+1} =0;
⑪ \text { end for }
⑫ {\rm{if}}({p_m} \gt {t_1})
⑬ 计算b_{j}=c_{j} r_{j} \mathop { \prod}\limits_{{k=1}}^{i} q_{k} \bmod M,其中 i \in[1, m-1], j \in\left[t_{1}, t_{i+1}-1\right], M=\mathop { \prod}\limits_{{i-1}}^{m} q_{i}, c_{j} \in\left[1, q_{i}\right), r_{j} \in N^{*};
⑭ 以 a_{0}, a_{1}, …, a_{p_{m}-1}, b_{t_{1}}, b_{t_{1}+1}, …, b_{t_{m}-1} 为系数, 构造一个 p_{ m }+t_{m}-t_{1}-1 阶多项式: H(x) = {a_0} +{{a_1}x} +…+ {a_{p_m-1}}x^{p_m-1}+{b_{t_1}x^{p_m}+} {…+b_{t_m-1}}x^{p_m+{t_m}-{t_1}-1} ;
⑮ {\rm{else}}
⑯ 在 (1, M) 上选择 t_{1}-p_{m} 个整数,其中M= \mathop { \prod}\limits_{{i=1}}^{m} q_{i};
⑰ 计算a_{j}=c_{j} r_{j} \mathop { \prod}\limits_{{k=1}}^{i} q_{k} \bmod M,其中 i \in [1, m-1], j \in\left[t_{1}, t_{i+1}-1\right], c_{j} \in\left[1, q_{i}\right), r_{j} \in N^{*} ;
⑱ 以 a_{0}, a_{1}, …, a_{t_{m}-1} 为系数,构造一个 t_{m}-1 阶多 项式: H(x)=a_{0}+a_{1} x+…+a_{t_{m}-1} x^{t_{m}-1} ;
⑲ end if
⑳ 计算参与者 P_{i}, i \in[1, n] 的子份额: y_{{i}}= H\left(x_{{i}}\right) \bmod M ;
㉑ {\rm{if}}({p_m} \gt {t_1})
㉒ 对 i = 1,2, … ,{p_m} - {t_1} ,先计算公共值 {d_i} = H(i)\bmod M ,再公布 {d_i} ;\$
㉓ end if
㉔ 将 y_{{i}} 分配给相应的参与者 P_{{i}} ,公布 q_{1}, q_{2}, …, q_{m} ,返回每个参与者的子份额 y_{{i}} .
3) 密钥集合加密以及信息上链
DO使用隐藏属性的访问策略加密对称密钥集合(对称密钥集合就是要共享的多个秘密),然后将对称密钥集合密文、密钥和密文哈希值对应关系通过智能合约上传至CB.
2.2.3 数据解密
1)根据隐藏属性的访问策略使用属性集重构秘密. DU从CB上得到对称密钥集合密文,DU使用自身的属性集合来重构某个对称密钥,重构采用CTM-SS[22]方案中的秘密重构算法来实现. 若DU的属性集合为授权集合,则解密成功;否则,解密失败. 该秘密重构算法如算法2所示. 算法2中,以授权集合 A=\left\{P_{1}, P_{2}, …, P_{t_{1}}\right\} 为例来说明秘密重构的过程,假设 A 要重构第i (1 \leq i \leq m) 组秘密 \left\{{k}_{i, 1},\; {k}_{i, 2}, …,{k}_{i, p_{1}}\right\} ,其门限值为 t_{i} .
算法2. 秘密重构算法.
输入:A, {i}, t_{i},
输出:\left\{{k}_{i, 1}, {k}_{i, 2}, …, {k}_{i, p_{i}}\right\}.
① 每个参与者 P_{j} ,{j} \in\left[1, t_{i}\right]出示他们的子份额 y_{j} ;
② 计算 y_{{i}, j}=y_{j} \bmod q_{i} ,得到 t_{i} 个点 \left(x_{1}, y_{i, 1}\right), \left(x_{2}, y_{i, 2}\right), …,\left(x_{t_i}, y_{i, t_i}\right);
③ {\rm{if}}({p_m} \gt {t_1})
④ 由公共值 d_{i}, i \in\left[1, p_{m}-t_{1}\right] ,计算 d_{i}^{\prime} \equiv d_{i} \bmod q_{i} ;
⑤ 得到 p_{m}-t_{1} 个点\left(1, d_{1}^{\prime}\right),\left(2, d_{2}^{\prime}\right), …, \left(p_{m}-t_{1}, d_{p_{m}-t_{1}}^{\prime}\right);
⑥ 利用p_{\text {m }}-t_{1}+t_{i}个点,通过Lagrange插值 多项式重构多项式 H_{i}(x)=a_{0}+ a_{1} x+…+a_{p_{m}-1} x^{p_{m}-1}+ b_{t_{1}} x^{p_{m}}+b_{t_{2}} x^{p_{m+1}}+…+ b_{{t_i}-1} x^{{p_m}+{t_i}-{t_1}-{1}} \bmod q_{i} ;
⑦ {\rm{else}}
⑧ 利用 t_{i} 个点,通过Lagrange插值多项式重 构多项式 H_{i}(x)=a_{0}+a_{1} x+…+ a_{p_{i}-1} x^{p_{i}-1}+ a_{p_{m}} x^{p_{m}}+…+ a_{{t_i}-1} x^{{t_i}-{1}} \bmod q_{i} ;
⑨ {\rm{end\;if}}
⑩ 已知 H_{i}(x) 的前 p_{i} 个系数,求出秘密 \left\{k_{i, 1} , k_{i, 2}, …, k_{i, p_i}\right\}= \left\{a_{0} \;{\rm{mod}}\; q_{i}, a_{1}\;{\rm{mod}}\;q_{i}, …, a_{{p_i}-1} \bmod q_{i}\right\};
⑪ 返回秘密\left\{{k}_{i, 1}, {k}_{i, 2}, …, {k}_{i, p_{i}}\right\}.
2)根据DU重构出的秘密\left\{{k}_{i, 1}, {k}_{i, 2}, …,{k}_{i, p_{i}}\right\}可知,对称密钥为\{{k_{i,1}}, {k_{i,2}}, …, {k_{i,{p_{i-1}}}}\}、对称密钥对应的密文哈希值索引为 k_{i, p_{i}} . 通过密钥和密文哈希值的对应关系,即可从CB上获取到数据对应的密文哈希值,进而得到密文. 最后,DU根据密钥解密出相应的数据.
2.3 智能合约设计
本文方案设计数据共享智能合约(data sharing smart contract, DSSC),采用Solidity语言进行编写. DO和DU通过调用DSSC合约实现共享数据的存储和获取. DSSC合约的基本业务设计如表1所示.
表 1 DSSC合约业务设计Table 1. DSSC Contract Business Design功能 合约方法 调用者 密文哈希值上链 uploadCTHashs( ) DO 由索引值获取对应的密文哈希值 getCTHash( ) DU 获取密钥集合密文 getSKSet( ) DU DSSC合约定义了2个引用类型的状态变量secretKeyAndHash和secretKeySetCiphertext,分别表示映射和字符串. 为了验证合约方法的正确性,基于Remix环境对3种合约方法进行了编译部署. 3种合约方法的具体代码实现如图3所示.
3. 方案分析
3.1 安全性分析
定理1. 隐藏属性的访问策略不会泄露任何有价值的信息.
证明. 在隐私保护设计中,摒弃可能泄露隐私信息的明文访问策略,以经过MurmurHash3 128 b哈希算法处理后的访问策略实现策略的完全隐藏. 因为哈希算法所计算出来的哈希值具有不可逆性,即使攻击者得到了访问策略,也就只能看到无数个属性哈希值,无法逆向演算回原本的属性信息,因此任何人都不可能知道属性和其对应的属性哈希值之间的对应关系. 故该策略可有效地保护属性信息. 证毕.
定理2. 在多秘密共享过程中,不同的门限访问结构不会影响系统的安全性.
证明. 由算法1可知,当 P_m > t_1 时,会构造一个 {P_m}+{t_m}-{t_1}-1 阶的多项式 {H}(x). 因此,至少需要知道{P_m}+{t_i}-{t_1}(1\leqslant i\leqslant m)个满足 {H_i}(x) 的点,才能重构 {H_i}(x) . 由于公布了 {P_m}-{t_1} 个点,至少还需要 t_i 个参与者合作才能重构 {H_i}(x) ,从而恢复秘密,而 {t_i}-1 个或更少的参与者将不能合作重构 {H_i}(x) ,这满足Shamir门限方案的安全性. 当 {P_m} \leqslant {t_1} 时,会构造一个 {t_m}-1 阶的多项式 {H}(x) . 因此,至少还需要t_i个参与者合作才能重构 {H_i}(x) ,从而恢复秘密,而 {t_i}-1 个或更少的参与者将不能合作重构 {H_i}(x) ,这也满足了Shamir门限方案的安全性. 本文方案中,每组秘密可以根据不同的门限访问结构进行共享,每次秘密重构过程都会根据上述2种情况进行分类讨论,若要重构出所共享的秘密,必须重构{t_i}-1次Lagrange插值多项式 {H_i}(x) . 而对于 {t_i}-1 个或更少的参与者来说,想要计算出所共享的秘密,等价于攻破Shamir门限方案,这在计算上是不可行的. 证毕.
定理3. 本文方案可以确保数据共享的安全性.
证明. 本文方案以文献[18]中的CP-ABE算法为原型,使用多秘密共享算法替换传统的单秘密共享算法,提出一种新型的多授权机构CP-ABE算法,CP-ABE算法的安全性并未降低. 首先,DO所共享的数据皆已加密;其次,使用改进后的多授权机构CP-ABE算法加密对称密钥集合;最后,只有授权用户方可解密出数据. 在本文方案中,即使攻击者得到了密钥和密文哈希值的对应关系,也不会降低本文方案的安全性,因为在密钥和密文哈希值的对应关系中,并不存储真正的密钥,而是以密钥的索引值和密文哈希值形成的键值对. 攻击者不能从对应关系中反推出密钥,只能获得密文哈希值,根据密文哈希值从IPFS中检索出密文,由于缺乏密钥,也不会对方案的安全性造成威胁. 证毕.
3.2 性能分析
在共享多组秘密(数据加密阶段描述的 m 组秘密 {G_1},{G_2},…,{G_m} )的情况下,将本文方案使用到的秘密共享算法和文献[24]中使用到的秘密共享算法进行分析.
文献[24]中,在 ({t_i},n) 门限访问结构上共享一组秘密 {G_i} ,秘密分发过程需要构造一个 n 阶的Lagrange插值多项式,若共享 m 组秘密,就需要进行 m 次秘密分发,重复计算量较大. 而对于本文方案,在 ({t_i},n) 门限访问结构上共享 m 组秘密时,秘密分发过程只需构造一个 {t_m} - 1 (当{p_m} \leqslant {t_1}时)阶或 {p_m} + {t_m} - {t_1} - 1 (当{p_m} \gt {t_1}时)阶的Lagrange插值多项式,即秘密分发仅需1次,就可以实现 m 组秘密共享. 因此,本文方案中使用到的秘密共享算法实现简单、计算量小,对于共享多组秘密具有优势.
3.3 功能对比分析
将本文方案与文献[7,10-11,24]中提出的数据共享方案就各项功能特性进行对比,结果如表2所示. 由表2可知,文献[7,11,24]都是采用单授权机构的CP-ABE方案,而且文献[7,11]只实现了策略部分隐藏,文献[24]不具有策略隐藏功能. 文献[10]虽然支持多授权机构和策略完全隐藏,但其使用到的秘密共享算法为单秘密共享. 多秘密共享算法可以一次共享多个秘密信息,所消耗的计算量远小于重复多次使用单秘密共享算法造成的开销. 因此,本文方案在联盟链环境下实现了数据细粒度访问控制,采用多授权机构和多秘密共享算法提高了系统运行的性能和数据共享的效率,也保证了策略的安全性.
4. 仿真实验
仿真实验使用JPBC(Java pairing-based cryptography)库和Google Guava工具包进行代码编写,在8 GB内存、Intel® Core™ i7-7700HQ CPU、Windows10操作系统环境下运行,结果均采用10次实验的平均运行时间.
4.1 策略隐藏性能
为验证本文方案中策略隐藏方法较文献[7]所具有的优势,对其时间开销进行对比实验. 实验结果如图4和表3所示:当属性个数为1.2万时,文献[7]采取的策略隐藏方法耗时几乎是本文方案的2倍.
表 3 策略隐藏性能Table 3. Policy Hiding Performance属性个数 时间开销/ms 文献[7] 本文方案 1000 50.0 28.9 3000 55.0 35.0 6000 69.0 39.0 9000 74.6 43.6 12000 84.0 45.0 4.2 秘密分发性能
秘密分发性能以秘密个数和属性个数为变量,测试各个方案的运行时间. 图5(a)(b)(c)(d)分别以属性个数为4,8,16和32时测试秘密分发阶段的时间开销. 由于本文方案使用的秘密共享算法为多秘密共享,多个秘密共享只需要1次秘密分发过程;而文献[7, 24]要想实现多个秘密共享,则需要多次秘密分发过程. 从图5和表4可以看出,随着属性个数和秘密个数的增大,本文方案秘密分发过程的计算量将远低于文献[7, 24].
表 4 秘密分发性能Table 4. Secret Distribution Performance属性个数 秘密个数 时间开销/ms 文献[7] 文献[24] 本文方案 4 2 0.11 0.10 0.12 4 0.22 0.20 0.21 6 0.32 0.30 0.23 8 0.43 0.40 0.37 10 0.54 0.50 0.44 8 2 0.21 0.24 0.13 4 0.42 0.47 0.22 6 0.62 0.71 0.36 8 0.83 0.94 0.41 10 1.04 1.18 0.48 16 2 0.40 0.42 0.16 4 0.79 0.84 0.26 6 1.12 1.26 0.37 8 1.58 1.68 0.51 10 1.98 2.10 0.62 32 2 0.69 0.95 0.21 4 1.38 1.90 0.34 6 2.08 2.86 0.42 8 2.77 3.81 0.61 10 3.46 4.76 0.81 5. 结束语
本文使用多授权机构CP-ABE算法设计了一种支持访问策略完全隐藏的物联网数据共享方案. 该方案不但解决了单属性机构CP-ABE方案导致的系统运行瓶颈的弊端,还使用MurmurHash3算法对访问策略进行完全隐藏,保护了访问策略的隐私安全. 不仅如此,本文引入多秘密共享算法代替传统的单秘密共享算法,做到一次共享过程可以共享多份数据,且每份数据可以具有不同的门限访问结构. 本文方案不但提高了资源利用率,而且为物联网数据共享方案提供了新思路. 安全性分析验证了本文方案的有效性,仿真实验结果表明了本文方案的高效性. 为进一步拓展策略隐藏的多授权机构CP-ABE数据共享方案的功能,未来将考虑实现可搜索加密.
作者贡献声明:张学旺指导选题,设计研究方案、论文结构,修改完善论文;姚亚宁负责搜集、整理实验数据,调研、整理文献,设计研究方案,实施研究过程,以及撰写论文;付佳丽协助收集、整理实验数据,参与研究过程;谢昊飞指导选题,修改论文.
-
表 1 数据集详细信息
Table 1 Detailed Information of Datasets
数据集 聚类数 样本数 视图数 视图维度 Caltech101-20 20 2386 2 1984 ,512LandUse-21 21 2100 2 59,40 Scene-15 15 4485 2 59,20 Scene-15-3V 15 4485 3 59,20,40 表 2 不同数据集上的聚类性能比较
Table 2 Clustering Performance Comparison on Different Datasets
% 算法 Caltech101-20 LandUse-21 Scene-15 ACC NMI ARI ACC NMI ARI ACC NMI ARI DCCA 41.89 59.14 33.39 15.51 23.15 4.43 36.18 38.92 20.87 DCCAE 44.05 59.12 34.56 15.62 24.41 4.42 36.44 39.78 21.47 DAIMC 45.48 61.79 32.40 24.35 29.35 10.26 32.09 33.55 17.42 BMVC 42.55 63.63 32.33 25.34 28.56 11.39 40.50 41.20 24.11 AE2-Nets 49.10 65.38 35.66 24.79 30.36 10.35 36.10 40.39 22.08 CoMVC 38.67 61.48 31.38 25.58 31.92 13.00 30.64 30.31 13.62 MFLVC 45.05 49.59 40.20 21.73 24.90 8.38 39.97 42.52 24.38 CSRF 60.39 66.22 47.99 25.95 31.86 11.67 41.23 42.03 24.13 CVCL 40.46 61.22 34.00 25.99 30.05 12.09 40.62 42.92 25.19 DCP 70.18 68.06 76.88 26.23 30.65 13.70 41.07 45.11 24.78 MCECC(本文) 73.82 71.71 82.56 29.02 33.73 15.44 42.75 45.58 26.66 注:每列中最好的结果以黑体标注,次优的结果以下划线标注. 表 3 Scene-15数据集上的消融实验
Table 3 Ablation Study on Scene-15 Dataset
% {\mathcal{L}_{\rm icl}} + {\mathcal{L}_{\rm ort}} {\mathcal{L}_{\rm rec}} {\mathcal{L}_{\rm ccl}} ACC NMI ARI √ 39.98 44.76 25.08 √ 26.40 30.03 10.52 √ √ 41.37 44.92 26.06 √ √ 40.49 44.63 25.96 √ √ 25.36 25.59 8.97 √ √ √ 42.75 45.58 26.66 -
[1] Sun Shiliang. A survey of multi-view machine learning[J]. Neural Computing and Applications, 2013, 23: 2031−2038 doi: 10.1007/s00521-013-1362-6
[2] Chen Mansheng, Lin Jiaqi, Li Xianglong, et al. Representation learning in multi-view clustering: A literature review[J]. Data Science and Engineering, 2022, 7(3): 225−241 doi: 10.1007/s41019-022-00190-8
[3] Liu Jing, Jiang Yu, Li Zechao, et al. Partially shared latent factor learning with multiview data[J]. IEEE Transactions on Neural Networks and Learning Systems, 2015, 26(6): 1233−1246 doi: 10.1109/TNNLS.2014.2335234
[4] Xu Chang, Tao Dacheng, Xu Chao. A survey on multi-view learning[J]. arXiv preprint, arXiv: 1304.5634, 2013
[5] Andrew G, Arora R, Bilmes J, et al. Deep canonical correlation analysis[C]//Proc of the 30th Int Conf on Machine Learning. New York: ACM, 2013: 1247−1255
[6] Peng Xi, Huang Zhenyu, Lv Jianchen, et al. COMIC: Multi-view clustering without parameter selection[C]//Proc of the 36th Int Conf on Machine Learning. New York: ACM, 2019: 5092−5101
[7] 于晓,刘慧,林毓秀,等. 一致性引导的自适应加权多视图聚类[J]. 计算机研究与发展,2022,59(7):1496−1508 Yu Xiao, Liu Hui, Lin Yuxiu, et al. Consensus guided auto-weighted multi-view clustering[J]. Journal of Computer Research and Development, 2022, 59(7): 1496−1508 (in Chinese)
[8] Wang Weiran, Arora R, Livescu K, et al. On deep multi-view representation learning[C]//Proc of the 32nd Int Conf on Machine Learning. New York: ACM, 2015: 1083−1092
[9] Yang Hao, Mao Hua, Woo W L, et al. Consistency enhancement-based deep multiview clustering via contrastive learning[J]. arXiv preprint, arXiv: 2401.12648, 2024
[10] Zhang Changqing, Liu Yeqing, Fu Huazhu. AE2-Nets: Autoencoder in autoencoder networks[C]//Proc of the 37th IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2019: 2577−2585
[11] Lin Yijie, Gou Yuanbiao, Liu Zitao, et al. Completer: Incomplete multi-view clustering via contrastive prediction[C]//Proc of the 39th IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 11174−11183
[12] Geng Chuanxing, Han Aiyang, Chen Songcan. View-labels are indispensable: A multifacet complementarity study of multi-view clustering[J]. arXiv preprint, arXiv: 2205.02507, 2022
[13] Xu Jie, Tang Huayi, Ren Yazhou, et al. Multi-level feature learning for contrastive multi-view clustering[C]//Proc of the 40th IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2022: 16051−16060
[14] Liu Suyuan, Liao Qing, Wang Siwei, et al. Robust and consistent anchor graph learning for multi-view clustering[J]. IEEE Transactions on Knowledge and Data Engineering, 2024, 36(8): 4207−4219
[15] Jia Xiaodong, Jing Xiaoyuan, Zhu Xiaoke, et al. Semi-supervised multi-view deep discriminant representation learning[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2021, 43(7): 2496−2509 doi: 10.1109/TPAMI.2020.2973634
[16] Li Jing, Gao Quanxue, Wang Qianqian, et al. Orthogonal non-negative tensor factorization based multi-view clustering[C]//Proc of the 37th Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT Press, 2023: 18186−18202
[17] Hu Menglei, Chen Songcan. Doubly aligned incomplete multi-view clustering[C]//Proc of the 27th Int Joint Conf on Artificial Intelligence. San Francisco, CA: Morgan Kaufmann, 2018: 2262−2268
[18] Chen Zhe, Wu Xiaojun, Xu Tianyang, et al. Fast self-guided multi-view subspace clustering[J]. IEEE Transactions on Image Processing, 2023, 32: 6514−6525 doi: 10.1109/TIP.2023.3261746
[19] Luo Shirui, Zhang Changqing, Zhang Wei, et al. Consistent and specific multi-view subspace clustering[C]//Proc of the 32nd AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2018: 3730−3737
[20] Liu Jiyuan, Liu Xinwang, Yang Yuexiang, et al. Contrastive multi-view kernel learning[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2023, 45(8): 9552−9566 doi: 10.1109/TPAMI.2023.3253211
[21] Liu Xinwang. SimpleMKKM: Simple multiple kernel k-means[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2023, 45(4): 5174−5186 doi: 10.1109/TPAMI.2022.3198638
[22] Chen Jie, Mao Hua, Peng Dezhong, et al. Multiview clustering by consensus spectral rotation fusion[J]. IEEE Transactions on Image Processing, 2023, 32: 5153−5166 doi: 10.1109/TIP.2023.3310339
[23] Lin Zhiping, Kang Zhao. Graph filter-based multi-view attributed graph clustering[C]//Proc of the 30th Int Joint Conf on Artificial Intelligence. San Francisco, CA: Morgan Kaufmann, 2021: 2723−2729
[24] Li Haobin, Li Yunfan, Yang Mouxing, et al. Incomplete multi-view clustering via prototype-based imputation[C]//Proc of the 32nd Int Joint Conf on Artificial Intelligence. San Francisco, CA: Morgan Kaufmann, 2023: 3911−3919
[25] Tang Huayi, Liu Yong. Deep safe multi-view clustering: Reducing the risk of clustering performance degradation caused by view increase[C]//Proc of the 40th IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2022: 202−211
[26] Lin Yijie, Gou Yuanbiao, Liu Xiaotian, et al. Dual contrastive prediction for incomplete multi-view representation learning[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2023, 45(4): 4447−4461
[27] Chen Jie, Mao Hua, Woo W L, et al. Deep multiview clustering by contrasting cluster assignments[C]//Proc of the 19th IEEE Int Conf on Computer Vision. Piscataway, NJ: IEEE, 2023: 16752−16761
[28] Oord A, Li Yazhe, Vinyals O. Representation learning with contrastive predictive coding[J]. arXiv preprint, arXiv: 1807.03748, 2018
[29] Chen Ting, Kornblith S, Norouzi M, et al. A simple framework for contrastive learning of visual representations[C]//Proc of the 37th Int Conf on Machine Learning. New York: ACM, 2020: 1597−1607
[30] He Kaiming, Fan Haoqi, Wu Yuxin, et al. Momentum contrast for unsupervised visual representation learning[C]//Proc of the 38th IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2020: 9729−9738
[31] Tian Yonglong, Krishnan D, Isola P. Contrastive multiview coding[C]//Proc of the 16th European Conf on Computer Vision. Berlin: Springer, 2020: 776−794
[32] Tsai Y H, Wu Yue, Salakhutdinov R, et al. Self-supervised learning from a multi-view perspective[C/OL]//Proc of the 9th Int Conf on Learning Representations. 2021[2024-06-01]. https://openreview.net/forum?id=-bdp_8Itjwp
[33] Tang Huayi, Liu Yong. Deep safe incomplete multi-view clustering: Theorem and algorithm[C]//Proc of the 39th Int Conf on Machine Learning. New York: ACM, 2022: 21090−21110
[34] Ji Xu, Henriques J F, Vedaldi A. Invariant information clustering for unsupervised image classification and segmentation[C]//Proc of the 17th IEEE Int Conf on Computer Vision. Piscataway, NJ: IEEE, 2019: 9865−9874
[35] Van der Maaten L, Hinton G. Visualizing data using t-SNE[J]. Journal of Machine Learning Research, 2008, 9(86): 2579−2605
[36] Guo Xifeng, Gao Long, Liu Xinwang, et al. Improved deep embedded clustering with local structure preservation[C]//Proc of the 26th Int Joint Conf on Artificial Intelligence. San Francisco, CA: Morgan Kaufmann, 2017: 1753−1759
[37] Sohn K, Berthelot D, Li C L, et al. FixMatch: Simplifying semi-supervised learning with consistency and confidence[C]//Proc of the 34th Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT Press, 2020: 596−608
[38] Li Yeqing, Nie Feiping, Huang Heng, et al. Large-scale multi-view spectral clustering via bipartite graph[C]//Proc of the 29th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2015: 2750−2756
[39] Yang Yi, Newsam S. Bag-of-visual-words and spatial extensions for land-use classification[C]//Proc of the 18th SIGSPATIAL Int Conf on Advances in Geographic Information systems. New York: ACM, 2010: 270−279
[40] Li Feifei, Perona P. A Bayesian hierarchical model for learning natural scene categories[C]//Proc of the 2005 IEEE Computer Society Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2005: 524−531
[41] Zhang Zheng, Liu Li, Shen Fumin, et al. Binary multi-view clustering[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019, 41(7): 1774−1782 doi: 10.1109/TPAMI.2018.2847335
[42] Trosten D J, Lokse S, Jenssen R, et al. Reconsidering representation alignment for multi-view clustering[C]//Proc of the 39th IEEE Conf on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2021: 1255−1265
-
期刊类型引用(2)
1. 刘娜,杨颜博,张嘉伟,李宝山,马建峰. 面向高分辨率图像传输的CNN网络编码方案研究. 西安电子科技大学学报. 2025(02): 225-238 . 百度学术
2. 贾国栋,庞浩,王相涛,刘青,宋倩. 基于大数据和人工智能技术的油田智能分析辅助决策子系统. 天然气与石油. 2024(03): 137-144 . 百度学术
其他类型引用(1)