-
摘要:
关键性能指标(key performance indicator,KPI)异常检测技术是互联网服务智能运维的基础支撑技术. 为了提升KPI异常检测的效率与准确性,基于机器学习的KPI异常检测技术成为近年来学术界与工业界的研究热点. 在综合分析相关研究的基础上,给出了面向互联网服务的KPI异常检测技术框架. 然后,分别针对单变量KPI、多变量KPI和矩阵变量KPI,从挖掘KPI在不同维度域(时间域、度量域、实体域)的依赖模式的角度出发,探讨了用于KPI异常检测的机器学习模型的选择动机. 进一步地,以检测性能目标为导向,详细介绍了以准确性目标为核心的KPI异常检测技术(关注如何提升KPI异常检测模型的准确性)和以多目标平衡为核心的KPI异常检测技术(关注如何平衡理论性能与实际应用目标间的关系). 最后,梳理了基于机器学习的KPI异常检测技术在KPI监控及预处理、模型通用性、模型可解释性、异常告警管理以及KPI异常检测任务自身局限性5个方面的挑战,同时指出了与之对应的潜在研究方向.
Abstract:Key performance indicator (KPI) anomaly detection is a fundamental technology for artificial intelligence for IT operations (AIOps) of Internet-based services. To improve the efficiency and accuracy of KPI anomaly detection, machine learning-based KPI anomaly detection has become a hotspot in both academia and industry recently. Through synthetically analyzing prior arts in this field, we first provide a technical framework of KPI anomaly detection for Internet-based services. Then, from the perspective of mining KPI’s dependency patterns in different domains (including time domain, metric domain and entity domain), we explore the motivation for model selection of KPI anomaly detection on three KPI types (including univariate KPI, multivariate KPIs and matrix-variate KPIs). Furthermore, guided by the detection performance objectives, we elaborate on KPI anomaly detection techniques from two perspectives: accuracy-centric anomaly detection techniques which focus on how to improve the accuracy of KPI anomaly detection models and multi-objective balancing-centric anomaly detection techniques which focus on how to balance theoretical performance with actual application objectives. Finally, we sort out five challenges on machine learning-based KPI anomaly detection, including KPI monitoring and KPI pre-processing, generality of the model, interpretability of the model, alarm management of anomalies, and limitations of KPI anomaly detection; and we also point out the corresponding potential research directions.
-
随着云计算技术在医疗领域的应用与普及,越来越多的用户倾向于将电子健康记录(electronic health record, EHR)外包至云端进行存储,以EHR数据为驱动的各类信息系统与应用为用户提供了各类便利服务. 例如:通过基于云共享的电子病历管理系统中保存的患者的各类历史医疗记录,医生在对患者的诊疗过程中能够根据他们的历史医疗数据做出更为精准的医疗服务[1];通过支持跨域数据访问的电子健康数据平台,保险公司能够获知客户近年来的体检信息或医疗诊断病历,为客户提供方便快捷的保险付费与理赔业务[2]. 由于EHR中包含了诸如患者身份信息和其他医疗敏感信息等私人数据[3],数据安全成为了云环境下EHR驱动的数据共享服务与应用所关注的主要问题. 为了避免隐私泄露,数据拥有者通常会在EHR存储于云端之前将其做加密处理.
由于在云环境中能够为用户提供细粒度、1对多和拥有者可控的密文数据安全共享方法[4],密文策略属性基加密(ciphertext-policy attribute-based encryption, CP-ABE)成为了研究者的关注热点并被广泛应用. 在传统的CP-ABE机制中,授权用户的解密权限由其拥有的属性集合生成,只有当解密权限对应的属性集合满足嵌入密文的访问策略时,授权用户才能够正确地完成密文解密. 但由于不同的用户可能会拥有相同的属性集合[5],CP-ABE机制存在解密权限滥用的安全问题. 解密权限滥用问题是由1对多的访问授权特点引起的,授权用户利用此特点可以在执行诸如出售解密密钥[6]或伪造解密设备[7]等恶意行为后来躲避系统问责. 例如,Alice和Bob拥有相同的属性集合,当该属性集合对应的解密密钥被恶意泄露后,系统无法从泄露的密钥中推断出泄密者的身份.
为解决由于解密权限恶意滥用而导致的数据安全问题,研究者提出了针对不同攻击行为的解决方案:白盒可追踪性(white-box traceability)[5-6,8-13]和黑盒可问责性(black-box accountability)[7,14-16]. 前者通过将用户身份信息嵌入到解密密钥来对被恶意用户泄露的解密密钥进行身份追踪,后者通过用户身份信息参与的加密和解密算法来实现对伪造解密设备的恶意用户的身份问责. 针对部署环境资源受限的场景,文献[4]基于大属性域(large universe)技术构造公共参数固定的密文数据访问方案,该方案公共参数的大小不会跟随属性数量的增长而改变,降低存储开销的同时还实现了方案的可扩展性. 文献[5]将大属性域技术和白盒可追踪技术相结合,提出了一种系统扩展性良好且抵抗用户密钥泄露的密文数据访问方案. 为了降低客户端解密过程的计算开销,文献[10]通过构造代理解密密钥的方式将大量的双线性计算外包至云端执行,此外该方案还支持访问权限的撤销. 为了解决现实医疗场景中由于患者离线而无法授权的问题,文献[11]在白盒可追踪CP-ABE方案的基础上引入了紧急访问授权(break glass key)技术,满足了不同场景下的医疗密文数据访问授权功能需求,并支持密钥泄露和紧急访问操作的用户身份追踪. 由于恶意用户可通过将解密密钥封装在解密设备中而使得上述白盒可追踪方案失效. 为了解决此问题,文献[14]为每个解密密钥分配了一个独有的索引参数,并通过对应的加解密算法将解密密钥和索引参数进行绑定,从而实现对构造解密设备的恶意用户的身份问责;文献[15]采用基于身份的集合加密(identity-based set encryption, IBSE)和指纹码(fingerprint code)技术设计了支持黑盒可问责的属性基恶意用户追踪方案,该方案的解密密钥长度与系统用户数量无关,能够有效降低客户端的存储与通信开销;文献[16]采用属性基恶意用户追踪(attribute-based traitor tracing, ABTT)和基于策略的变色龙哈希(policy-based chameleon Hash, PCH)算法构造了属性基可编辑区块链方案,通过引入指纹码和基于身份数字签名使其支持黑盒可问责性,实现了可编辑区块链应用场景的恶意用户身份问责. 文献[17]通过将用户对数据的操作记录上传至区块链中存储实现了用户访问行为的审计追踪,但该方案是针对明文数据场景的,在访问行为存储过程和审计过程中无法保护用户的隐私信息,并且基于区块链的审计追踪过程需要遍历所有区块以提取审计目标的访问记录,增加了额外的时间开销. 为了优化区块遍历过程的时间开销,Ruan等人[18]针对区块链交易事务提出了有向无环图结构,图中的节点表示交易事务对应的账户在某个版本下的状态值,图中的有向边表示交易,通过有向无环图建立“交易账户状态-交易事务”之间的映射关系,并在此基础上构造跳表索引结构来减少查询账户状态所需遍历的区块数量,优化时间效率. 然而该方案同样是面向明文数据场景的,无法应用于密文数据访问行为审计的应用场景. 文献[19]在CP-ABE密文访问架构上,利用同步聚合签名(synchronized aggregate signature)技术实现了用户在密文访问过程中对使用云端资源消耗凭据的快速验证.
如上所述,现有研究方案仅能够对特定的解密权限滥用行为实现恶意用户身份追踪,而对于可能会导致潜在安全威胁和隐私泄露的授权用户的正常访问行为还缺少相应的身份追踪方法. 例如,Wang等人[19]指出分布式拒绝服务(distributed denial-of-service, DDoS)攻击可能由授权用户正常的访问行为触发,虽然文献[20]通过在CP-ABE解密算法中引入计数器参数来限制授权用户对密文的访问次数,但该方案在响应授权用户的访问请求时,云端仍然需要消耗一定的计算资源,无法有效抵抗DDoS攻击模式;此外在现实应用中,患者通常希望加密EHR数据仅能够被自己的主管医师所访问,但由于CP-ABE的1对多特性,患者的这一隐私期望难以得到实现,进而导致潜在的隐私泄露风险;另一方面,《通用数据保护条例》等法律赋予了数据拥有者有关个人数据处理过程的知情权[21],但由于CP-ABE的1对多特性带来的匿名性[16],导致现有基于属性基加密机制的密文数据共享方案在现实应用中存在合规性问题. 如上所述,现有CP-ABE数据访问授权方案应用于以数据为驱动的信息共享服务场景时,仍然面临数据安全与合规性等问题. Facebook与滴滴出行由于恶意滥用用户数据与违反法律法规而遭受处罚的案例表明,若不能有效解决数据安全与合规性问题,则难以在现实中推广以数据驱动的各类信息与数据服务.
导致上述问题的根本原因是现有基于属性基加密机制的密文共享方案无法提供密文数据访问行为的身份追踪. 为了解决这一问题,本文在白盒可追踪的密文策略属性基加密机制基础上提出了一个可证明安全的支持授权用户访问行为身份追踪的跨域密文数据共享方案. 在该方案中,授权用户的所有访问请求将被记录在区块链中用于访问行为的身份追踪. 本文的主要创新点包括3点:1)针对来自于不同机构授权用户的密文访问需求,通过多授权机构管理各自机构的访问属性,并利用内嵌密文的双重访问策略设计支持白盒可追踪的跨域密文数据共享方案,该方案基于大属性域技术构造,具有较好的可扩展性;2)通过轻量级Gamma签名和交互式外包解密算法实现解密密钥和访问行为绑定,并将用户访问行为以密文形式存储在区块链中,实现访问行为完整性保护;3)为了减轻数据拥有者针对访问行为的身份审计过程需要遍历区块链的时间开销,本方案设计了用于区块链遍历优化的倒排索引结构,并基于BLS签名和隐私集合求交(private set intersection, PSI)运算构造陷门查询算法,在优化区块链上对密文内容遍历效率的基础上,对用户的敏感信息和访问模式进行了有效保护.
1. 相关知识
1.1 双线性映射
假设G和GT为2个阶为素数p的乘法循环群,令g为群G的生成元,群G和GT之间的双线性映射e:G×G→GT具有3个性质:
1)双线性. ∀f,h∈RG 和 ∀a,b∈RZp,有 e(fa,hb)=e(f,h)ab.
2)可计算性. ∀f,h∈RG,e(f,h)是可计算的.
3)非退化性. e(g,g)≠1.
1.2 访问结构
定义1. 访问结构[22]. 令{P1,P2,…,Pn}为参与实体的集合,如果集合A⊆2{P1,P2,…,Pn}对于∀B,C:若B∈A且B⊆C,有C∈A,则称A是单调的. 若访问结构A是参与实体{P1,P2,…,Pn}构成幂集的非空子集合,即A∈2{P1,P2,…,Pn}∖{∅},则包含在A中的集合被称为授权集合,不包含在A内的集合为非授权集合.
1.3 线性秘密分享方案
定义2. 线性秘密分享方案(linear secret sharing scheme, LSSS)[22]. 令p为素数,构建在参与者集合A上的秘密共享方案Π满足2个条件时,则称Π在Zp上是线性的:
1)每个实体分享的子秘密是Zp上的向量;
2)对于秘密分享方案Π存在一个分享生成矩阵{\boldsymbol{M}} \in \mathbb{Z}_p^{},其中{\boldsymbol{M}}是l \times n矩阵. 对于矩阵{\boldsymbol{M}}中的每一行i = 1,2, … ,l,映射函数\rho :\{ 1,2, … ,l\} \to \mathbb{A}把每一个矩阵行向量映射为对应的参与者\rho (i). 构造列向量 {\boldsymbol{v}} = (s,{v_2},{v_3}, … ,{v_n}) ,其中s \in {\mathbb{Z}_p}是主秘密,随机数 {v_2}, … , {v_n} \in {\mathbb{Z}_p} 用来掩饰s. 由{\boldsymbol{Mv}}得到主秘密s的l个子秘密,其中{({\boldsymbol{Mv}})_i}表示参与者\rho (i)所分配到的子秘密.
令S \in \mathbb{A}为任意授权集合,且I \subset \{ 1,2, … ,l\} 被定义为I = \{ i:\rho (i) \in S\} ,则存在{\{ {\omega _i} \in {\mathbb{Z}_p}\} _{i \in I}}对于分享生成矩阵{\boldsymbol{M}}满足
\sum\limits_{i \in I} {{\omega _i}{{\boldsymbol{M}}_i} = (1,0, … ,0)}. 1.4 安全性假设
定义3. q-type假设[23]. 令g为双线性群G中的随机元素,d,s,{b_1},{b_2}, … ,{b_q} \in {\mathbb{Z}_p}为q + 2个随机数. 若对给定的双线性映射(p,G,{G_T},e)和多元组( g,{g^s} , {g^{{d^i}}},{g^{{b_j}}}, {g^{s{b_j}}},{g^{{d^i}{b_j}}},{g^{{d^i}/b_j^2}} , \forall (i,j) \in [q,q], {g^{{d^i}{b_j}/b_{j'}^2}} , \forall (i,j,j') \in [2q,q,q]且j \ne j', {g^{{d^i}/b_j^{}}} , \forall (i,j) \in [2q,q]且i \ne q + 1, {g^{s{d^i}{b_j}/b_{j'}^{}}},{g^{s{d^i}{b_j}/b_{j'}^2}} , \forall (i,j,j') \in [q,q,q]且j \ne j'),若攻击者无法在多项式时间内以不可忽略的优势区分e{(g,g)^{s{d^{q + 1}}}}和随机元素R \in {G_T},则称q-type假设成立.
定义4. l-SDH假设[24]. 假设G是阶为素数p的双线性群且g为生成元,在群G上的l-SDH(l-strong Diffie-Hellman)问题被定义为:对给定元组(g,{g^x},{g^{{x^2}}}, … ,{g^{{x^l}}})和(c,{g^{1/(c + x)}}) \in {\mathbb{Z}_p} \times G,若攻击者无法在多项式时间内以不可忽略的优势区分上述参数,则称l-SDH假设成立.
2. 系统和安全模型
2.1 系统模型
如图1所示,本文方案包含6个实体,其中密钥生成中心和授权代理被假设为完全可信.
1)密钥生成中心(key generation center, KGC). 该实体负责生成系统公开参数和系统主私钥.
2)授权代理(authority agent, AA). 为了有效管理不同机构用户的访问属性,方案包含若干个AA,每个AA管理对应的属性域. AA为系统用户生成公私钥及访问密钥;同时全体AA参与区块链运行维护,并负责管理用于区块链遍历优化的倒排索引结构.
3)云服务提供商(cloud service provider, CSP). CSP为系统用户提供加密数据存储服务和外包解密服务.
4)数据拥有者(data owner, DO). DO生成加密数据并上传到CSP端,同时将外包解密算法所需的辅助信息发送至区块链存储,此外DO还能够针对外包数据发起访问行为的审计查询.
5)数据使用者(data user, DU). DU向所属的AA注册以获得解密密钥. 访问数据时,DU向CSP发送访问请求以获得外包解密密文,并在本地完成最终的解密操作.
6)区块链(blockchain, BC). 区块链作为方案的分布式账本,DU的访问请求以交易事务的形式存储在区块链中. 链中各类节点由AA担任,包括主节点(peer node)、排序节点(ordering node)和查询节点(query node, QN)[25],其中主节点负责交易事务的存储,排序节点负责共识协议,查询节点负责响应用户的数据访问请求和审计请求.
2.2 算法描述
本文方案包含11个多项式算法,各算法描述为:
1)系统初始化S etup({1^\kappa }) \to (pp,msk). KGC执行该算法. 该算法以安全参数{1^\kappa }为输入,输出系统公共参数pp和主私钥msk,下列算法描述中将省略系统公共参数.
2)授权代理初始化AAS etup(msk) \to (aPK,aSK). KGC执行该算法. 该算法以主私钥为输入,输出授权代理AAi的公私钥对(aP{K_i},aS {K_i}).
3)实体初始化EntS etup(msk) \to (PK,SK). KGC执行该算法. 该算法以主私钥msk为输入,输出CSP和BC的公私钥对(PK,S K).
4)授权用户密钥生成KeyGen(aS{K_i},ui{d_j},S) \to (uP{K_{i,j}},uS {K_{i,j}},uD{K_{i,j}}). AAi执行该算法. 该算法以私钥aS{K_i}和数据使用者DUj身份ui{d_j}和访问属性集合S为输入,输出DUj的公/私/解密密钥三元组(uP{K_{i,j}},uS {K_{i,j}}, uD{K_{i,j}}).
5)加密Enc(m,({\boldsymbol{M}},\delta ),({\boldsymbol{A}},\rho )) \to \{ CT,aux\} . DO执行该算法. 该算法以访问策略\{ ({\boldsymbol{M}},\delta ),({\boldsymbol{A}},\rho )\} 、明文m为输入,输出密文CT和辅助解密参数aux.
6)索引生成IdxGen(fid,oSK,P{K_{{\text{BC}}}}) \to idx. DO执行该算法. 该算法以外包文件名fid、私钥oSK和区块链公钥P{K_{{\text{BC}}}}为输入,输出索引结构idx.
7)外包解密 OutDec(CT,OK,aux) \to C{T_{{\text{out}}}} . CSP执行该算法. 该算法以DU的外包解密密钥OK和辅助解密参数aux为输入,输出密文CT的外包解密密文C{T_{{\text{out}}}}.
8)解密 Dec(C{T_{{\text{out}}}}) \to m/ \bot . 数据使用者DUj执行该算法. 该算法以外包解密密文C{T_{{\text{out}}}}为输入,输出明文m或 \bot .
9)审计查询生成 QryGen(fi{d_{\text{t}}},oSK) \to {T_{\text{Q}}} . DO执行该算法. 该算法以DO私钥oSK和目标文件名fi{d_{\text{t}}}为输入,输出审计查询 {T_{\text{Q}}} .
10)查询匹配 QryInt({T_{\text{Q}}},idx) \to \{ bn\} . BC执行该算法. 该算法以审计查询 {T_{\text{Q}}} 和索引结构idx为输入,输出区块编号集合 \{ bn\} .
11)身份追踪Trace(OK,aS{K_i}) \to uid. AAi执行该算法. 该算法以外包解密密钥OK和AAi私钥aS{K_i}为输入,输出内嵌于OK中的DU的身份信息uid.
2.3 安全模型
在该方案中,KGC和AA被假定为完全可信的;CSP被假定为“诚实且好奇”的,即CSP会诚实地存储加密数据和执行预定义的算法,但会从整个存储和解密流程中试图获取用户的隐私信息;系统的攻击者被假定为非授权用户、恶意授权用户和其他攻击者,其中非授权用户会尝试利用已掌握的解密权限来解密无权限访问的密文数据,恶意授权用户会试图对自己的访问行为进行抵赖或出售解密权限,其他攻击者会试图获取系统内用户的各项隐私信息(例如从区块链中存储的访问请求、倒排索引内容和审计查询中获取的访问模式等隐私信息).
选择性安全(selective security)[6]. 本文方案的数据机密性(data confidentiality)建立在选择性安全基础之上. 选择性安全通过敌手和挑战者之间的游戏来定义,假设X为敌手发起密钥查询的次数上限且{X_1} \in \{ 0,1, … ,X\} ,游戏具体流程为:
1)初始化. 敌手选择要挑战的访问结构S{T^*},并将其发送给挑战者.
2)参数建立. 挑战者执行S etup()和AAS etup()算法,生成公共参数pp和授权代理AA的公私钥(aPk, aSK),并将pp和aPK发送给敌手.
3)查询阶段1. 敌手为其身份信息ui{d_{{{X}_1}}}和属性集合{S_{{{ X}_1}}}向挑战者发出密钥请求,其中{S_{{{X}_1}}} \notin S{T^*}. 挑战者执行 KeyGen() 算法为其生成对应的解密私钥uD{K_{ui{d_{{{ X}_1}}},{S_{{{ X}_1}}}}}.
4)挑战. 敌手将2个等长的消息({m_0},{m_1})发送给挑战者,挑战者随机选取\beta \in \{ 0,1\} ,并基于访问结构S{T^*}执行Enc()算法对{m_\beta }进行加密,并将密文CT发送给敌手.
5)查询阶段2. 敌手在{S_{{{ X}_1}}} \notin S{T^*}和{{ X}_1} \leqslant { X}的约束下延续查询阶段1的行为以获取不同属性集合的解密密钥.
6)猜测. 敌手输出对\beta 的猜测结果\beta ' \in \{ 0,1\} . 在该游戏中,敌手的优势被定义为|Pr[\beta ' = \beta ] - 1/2|.
定义5. 如果对于所有的概率多项式时间(probabilistic polynomial time, PPT)的敌手无法以不可忽略的优势赢得上述游戏,则称该方案是选择性安全的.
追踪正确性(tracing correctness). 本文方案访问行为的可追踪性通过白盒可追踪性(white-box traceability)[9]实现,即授权用户无法伪造其他用户的解密权限,进而无法抵赖自己的访问行为. 审计正确性通过敌手和挑战者之间的游戏来定义,假设O为敌手发起的密钥查询的次数上限,游戏具体流程为:
1)参数建立. 挑战者执行S etup()和AAS etup()算法,生成公共参数pp和授权代理AA的公私钥(aPk,aSK),并将pp和aPK发送给敌手.
2)密钥查询. 敌手向挑战者提交用户身份和属性集合(ui{d_1},{S_1}),(ui{d_2},{S_2}), … ,(ui{d_O},{S_O})以获取对应的解密密钥.
3)访问请求伪造. 敌手通过输出解密密钥uD{K^*}来伪造一个访问请求re{q^*},若Trace()算法的输出结果不属于\{ ui{d_1},ui{d_2}, … ,ui{d_O}\} ,则敌手赢得该游戏. 敌手的优势被定义为Pr[Trace() \notin \{ ui{d_1},ui{d_2}, … ,ui{d_O}\} ].
定义6. 如果对于所有的概率多项式时间敌手无法以不可忽略的优势赢得上述游戏,则称该方案能够实现追踪正确性.
此外,系统还需要保证数据拥有者在审计过程中的索引隐私、查询隐私和访问模式隐私:
1)索引隐私(index privacy). 索引隐私保证了在区块链查询节点中存储的索引结构的机密性,使得攻击者无法根据索引内容推测出DO的敏感信息.
2)查询隐私(query privacy). 查询隐私保证了其他攻击者无法从DO在发起审计查询中获取审计目标的相关信息. 在区块链查询节点处存储的倒排索引以密文形式存储,审计查询以陷门形式存在.
3)访问模式隐私(access pattern privacy). 访问模式隐私保证了审计查询结果的隐私性,以防止攻击者从查询结果中推测出索引结构的隐私信息和陷门内容[26],为了实现访问模式隐私,需要确保不同查询的返回结果是不可区分的.
3. 方案设计
如图1所示,支持用户访问行为审计的跨域密文共享方案包含5个阶段,各阶段主要流程为:
1)KGC初始化生成系统参数,并为AA、BC和CSP生成对应的公私钥.
2)AA为各自管理域中的DU生成公私钥和解密密钥,并为DO生成全局公私钥对.
3)DO对明文加密,将密文上传至CSP存储;同时基于明文数据文件名构造倒排索引的索引词典,连同外包解密过程所需的辅助信息上传至BC存储.
4)当DU访问云端密文数据时,DU生成外包解密密钥,并构造密文访问请求,在此基础上生成访问请求数字签名,将访问请求和数字签名一并发送给BC和CSP;BC查询节点对数字签名验证后,对访问请求进行加密后发送至BC存储,完成对访问目标对应的倒排索引的更新,并将对应的辅助解密参数发送给CSP;CSP利用辅助解密参数和访问请求完成外包解密,将外包解密密文发送给DU,最终由DU在本地完成外包解密密文的解密操作.
5)DO对外包密文数据进行访问者身份审计时,首先针对审计目标文件构造陷门查询,并将其发送给BC;BC查询节点收到查询后在倒排索引结构上进行密文求交运算,根据匹配结果定位审计目标文件的访问请求所在区块编号,并依据区块编号找到待审计文件对应的加密访问请求,对其解密后从中抽取出DU的身份信息,并将其加密后发送给DO.
方案中常用的符号和语义描述如表1所示.
表 1 常用符号和描述Table 1. Commonly Used Symbols and Their Descriptions符号 描述 pp, msk 系统公共参数,系统主私钥 aPK, aSK 授权代理公、私钥 PKBC, SKBC 区块链节点公、私钥 PKCSP, SKCSP 云服务提供商公、私钥 uid, S DU身份信息及其属性集合 uPK, uSK, uDK, OK DU公、私钥,解密密钥和外包解密密钥 oid, oPK, oSK DO身份信息及公、私钥 m, fid, ftg 明文数据,对应文件名及文件名标签 SEnc, SDec 对称加、解密函数 H, H1, H2, H3, H4, F 密码学哈希函数,伪随机函数 CT, CTout 密文,外包解密密文 bn, ntg 区块编号,区块编号标签 req, Creq 访问请求,访问请求密文 idx, TQ 倒排索引,审计查询 3.1 方案初始化
该阶段由KGC分别为系统、授权代理和其他实体生成对应的参数和公私钥.
1)KGC调用算法Setup({1^\kappa }) \to \{ pp,msk\} 生成系统公共参数pp与系统主私钥msk,该算法具体流程为:
KGC选择{1^\kappa }为系统安全参数,令g是阶为素数p的双线性群G生成元,双线性映射e:G \times G \to {G_T}. 令S Enc,S Dec为安全对称加、解密函数,F为伪随机函数(pseudorandom function)[24],KGC随机选择 {g_{\text{1}}},{g_2},{g_3},{g_4} \in G 和\alpha ,a \in \mathbb{Z}_p^*,计算h = g_1^a,f = {g^a},v = {g^\alpha },选择密码学哈希函数{H_1}:{\{ 0,1\} ^*} \to \mathbb{Z}_p^*,{H_2}:G \to \mathbb{Z}_p^*,{H_3}:\{ 0,1\} * \to G,{H_4}: {\{ 0,1\} ^*} \to {\mathbb{Z}_p},H:{\{ 0,1\} ^*} \to {\{ 0,1\} ^C},C为常数. 系统公共参数pp =\{ G,{G_{T,}}e,g,{g_1},{g_2},{g_3},{g_4},h,f,v,{v^{ - 1}}\} ,系统主私钥msk = \alpha .
2)KGC调用算法AASetup() \to \{ aPK,aSK\} 为授权代理AAi生成公私钥. KGC随机选择{\alpha _i} \in \mathbb{Z}_p^*,计算AAi公钥aP{K_i} = g_1^{{\alpha _i}},私钥aS{K_i} = \{ aS {K_{i,1}} = {\alpha _i},aS {K_{i,2}} = a\} ,其中aS {K_{i,2}}为所有AA的全局私钥.
3)KGC调用算法EntSetup() \to \{ PK,SK\} 为BC和CSP分别生成对应的公私钥对. KGC随机选择b,c \in \mathbb{Z}_p^*,则BC的公私钥对为P{K_{{\text{BC}}}} = {h^b},S{K_{{\text{BC}}}} = b,由于BC由全体AA维护,因此AA拥有BC公私钥对(P{K_{{\text{BC}}}},S{K_{{\text{BC}}}});CSP的公私钥对为P{K_{{\text{CSP}}}} = {h^c},S{K_{{\text{CSP}}}} = c.
3.2 用户注册
在该阶段,DO和DU向AAi注册获得密钥.
对于DO,AAi基于身份加密机制[27]为其生成公私钥对,令oid为DO的身份信息,DO公钥oPK = {H_3}(oid),私钥oSK = oP{K^{aS {K_{i,2}}}}.
对于DUj,AAi调用算法KeyGen(aS{K_i}, ui{d_j},S) \to \{ uP{K_{i,j}},uS {K_{i,j}},uD{K_{i,j}}\} 为其生成公钥、私钥与解密密钥三元组,该算法具体流程为:
假设用户DUj身份信息为ui{d_j},AAi计算 {o_{j,1}} = S En{c_{aS {K_{i,2}}}}(ui{d_j}) , {z_j} = S En{c_{aS {K_{i,2}}}}({o_{j,1}}||{o_{j,2}}) ,其中{o_{j,2}} = g_1^{{\alpha _i} + o'_{j,2}},且o_{j,2}' \in \mathbb{Z}_p^*为随机数,使 {z_j} 满足 gcd(a + {z_j},p) = 1 . 假设DUj访问属性集合为S = \{ {A_1},{A_2}, … ,{A_k}\} \subset \mathbb{Z}_p^*,AAi令 r = o_{j,2}' 并随机选择 {r_1},{r_2}, … ,{r_\tau } \in \mathbb{Z}_p^* ,其中\tau \in [k]. DUj公钥uP{K_{i,j}}、私钥uS {K_{i,j}}和解密密钥D{K_{i,j}}构造为:
\begin{aligned} &uP{K_{i,j}} = \{ {({g_1}{v^{ - 1}})^{o{'_{j,2}}}},g_4^{a + {z_j}}\} \text{,}uS {K_{i,j}} = o_{j,2}' \text{,} d{k_{i,j,1}} = {v^{1/(a + {z_j})}}g_1^r \text{,}\\ &d{k_{i,j,2}} = {z_j}\text{,}d{k_{i,j,3}} = {f^r}\text{,}d{k_{i,j,4}} = {g^r}\text{,}d{k_{i,j,5}} = {\{ {g^{{r_\tau }}}\} _{\tau \in [k]}}\text{,}\\ & d{k_{i,j,6}} = {\{ {(g_2^{{A_\tau }}{g_3})^{{r_\tau }}}g_4^{ - (a + {z_j})r}\} _{\tau \in [k]}} \text{,}d{k_{i,j,7}} = {\{ aPK_\mu ^{a + {z_j}}g_2^{{z_j}}\} _{\mu \in [L]}}\text{,}\end{aligned} 其中L代表方案中AA的数量.
3.3 数据加密
在该阶段,DO生成辅助解密参数并构造倒排索引词典,将其上传至BC存储. DO采用密钥封装机制[28]并调用Enc()算法对外包文件fid的明文数据m进行加密,下面介绍具体过程.
1)DO随机选择{\gamma _1},{\gamma _2},\xi \in \mathbb{Z}_p^*,计算 {\xi _1} = {H_2}(PK_{{\text{BC}}}^{{\gamma _1} + {\gamma _2}}\times PK_{{\text{CSP}}}^{{\gamma _1} + {\gamma _2}}) 和{\xi _2} = \xi + {\xi _1},DO调用算法IdxGen(fid,oSK, P{K_{{\text{BC}}}}) \to idx生成倒排索引idx. 该算法具体流程为:
DO计算ftg = F(e(oSK,P{K_{{\text{BC}}}})||H(fid)),构造倒排索引文件名标签词典dict,其中索引词典元素dict[i] = ft{g_i},DO将审计词典dict和辅助解密参数aux = \{ {h^{{\gamma _1} + {\gamma _2}}},{g^{{\xi _2}}}\} 发送给BC,其中dict存储于查询节点QN中,QN为该DO创建倒排索引结构,解密辅助参数aux存储在BC中. 在密文数据访问阶段,QN将外包文件fi{d_i}的访问请求re{q_{fi{d_i}}}所在区块编号bn转化为编号标签nt{g_{bn}},将其插入到dict[i]对应的索引列表当中. 用于BC遍历优化的倒排索引构造如图2所示.
2)DO调用算法Enc(m,({\boldsymbol{M}},\delta ),({\boldsymbol{A}},\rho )) \to CT将文件fid所对应的明文数据m加密为密文CT. 该算法具体流程为:
令 ({\boldsymbol{M}},\delta ) 和 ({\boldsymbol{A}},\rho ) 为2个基于线性秘密分享方案构造的访问结构,其中{\boldsymbol{M}}和{\boldsymbol{A}}分别为l \times n和L \times n的矩阵,函数\delta ()将M的每一行映射为一个访问属性,函数\rho ()将{\boldsymbol{A}}的每一行映射为一个AA. DO选择随机数并构造列向量{\boldsymbol{s}} = {(s,{s_2}, … ,{s_n})^{\text{T}}}和{\boldsymbol{\varepsilon}} = {(0,{\varepsilon _2}, … ,{\varepsilon _n})^{\text{T}}},通过线性秘密分享方案的秘密分享过程,计算{\lambda _x} = {{\boldsymbol{M}}_x}{\boldsymbol{s}}和{\theta _y} = {{\boldsymbol{A}}_y}{\boldsymbol{\varepsilon }},其中x \in [l],y \in [L]. DO随机选择{t_x},{t_y} \in \mathbb{Z}_p^*,key \in {G_T},密文CT构造为:
\begin{aligned} & {C_m} = S En{c_{key}}(m||H(m))\text{,}C = key \times e{(g,v)^s}\text{,}\\ & {C_0} = {g^s}\text{,} C{'_0} = {f^s}{g^\xi } \text{,}\\ & \left\{{C_{1,x}} = g_1^{{\lambda _x}}g_4^{{t_x}}, {C_{2,x}} = {(g_2^{\delta (x)}{g_3})^{ - {t_x}}},{C_{3,x}} = {g^{{t_x}}}\right\} _{x \in [l]}, \\ & \left\{{C_{4,y}} = {g^{{\alpha _{\rho (y)}}{t_y}}},{C_{5,y}} = {g^{ - {t_y}}},{C_{6,y}} ={ {g^{{t_y}}}g_2^{{\theta_y}}}\right\}_{y \in [L]} \text{,}\end{aligned} DO将 ({\boldsymbol{M}},\delta ) 、 ({\boldsymbol{A}},\rho ) 和密文CT发送给CSP.
3.4 密文数据访问
在该阶段,DU向BC和CSP发送密文数据访问请求;BC对访问请求验证后将该访问请求写入到BC,并向CSP发送辅助解密参数;CSP将访问请求对应的密文进行外包解密后发送给DU,DU在本地完成最终的解密操作,实现密文数据访问,下面介绍具体流程.
1)DUj以线下协商方式[29]从DO处获取访问目标元数据oid和H(fid),例如患者向医生提供其姓名或身份证号码作为oid、EHR文件名称作为fid,并使用H(fid)替换fid以保护EHR文件名中包含的敏感信息. DUj选择随机盲因子\eta \in \mathbb{Z}_p^*,生成外包解密密钥OK:
\begin{aligned} &o{k_1} = dk_{i,j,1}^\eta \text{,}o{k_2} = d{k_{i,j,2}}\text{,}o{k_3} = dk_{i,j,3}^\eta \text{,} o{k_4} = dk_{i,j,4}^\eta \text{,} \\ &o{k_5} = dk_{i,j,5}^\eta \text{,} o{k_6} = dk_{i,j,6}^\eta \text{,} o{k_7} = dk_{i,j,7}^{} \text{,} o{k_8} = {g^\eta } .\end{aligned} DUj构造访问请求req = \{ oid,H(fid),OK\} 及其Gamma数字签名[30]sig:随机选择u \in {\mathbb{Z}_p},令w = {H_1}(req), U = {({g_1}{v^{ - 1}})^u},\;\;{u_1} = {H_4}(uP{K_{i,j}}||U),并计算{w_1} = (u \times {u_1} - w \times uS {K_{i,j}})\text{mod} p,DUj访问请求req的Gamma签名为sig = \{ {u_1},{w_1}\} ;DUj将访问信息\{ req,sig\} 发送给BC和CSP.
2)BC收到数据访问者DUj的访问信息\{ req, sig\} 后,基于DUj的公钥uP{K_{i,j}}对req进行验证:假设待验证签名为 sig' = \{ u_1',w_1'\} ,计算w = {H_1}(req), U' = {({({g_1}{v^{ - 1}})^{w_1'}}uPK_{i,j,1}^w)^{{{(u_1')}^{ - 1}}}} ,验证等式 {H_4}(uP{K_{i,j}}||U{'}) = u_1' 是否成立. 若等式不成立,BC忽略此请求,否则,BC查询节点QN执行以下操作:
为了保护访问请求req = \{ oid,H(fid),OK\} 中的敏感信息,查询节点QN需要对访问请求req进行加密. QN计算 ke{y_1} = e{(P{K_{{\text{BC}}}},{H_3}(oid))^{aS {K_2}}} ,生成req密文{C_{req}} = S En{c_{ke{y_1}}}(req||ts),其中ts表示当前时间戳. {C_{req}}以交易的形式存储在新建区块中,QN基于该区块编号bn生成编号标签nt{g_{bn}}并将其插入到ft{g_{fid}}所对应的索引列表lis{t_{fid}}中,其中nt{g_{bn}} = F(e{({H_3}(oid),{h^{aS {K_2}}})^{S {K_{{\text{BC}}}}}}||bn);QN基于访问请求req计算文件名标签ft{g_{fid}} = F(e({H_3}(oid), {h^{aS {K_2}})^{S{K_{{\text{BC}}}}}}||H(fid)),在BC中查询得到ft{g_{fid}}对应的辅助解密信息 aux = \{ {h^{{\gamma _1} + {\gamma _2}}},\;{g^{{\xi _2}}}\} ,计算 {h^{({\gamma _1} + {\gamma _2})S{K_{{\text{BC}}}}}} ,将 \{ {h^{({\gamma _1} + {\gamma _2})S{K_{{\text{BC}}}}}}, {g^{{\xi _2}}}\} 发送给CSP.
3)CSP从DUj发送的访问请求req = \{ oid,H(fid), OK\} 中获取其外包解密密钥OK,并基于BC发送的 \{ {h^{({\gamma _1} + {\gamma _2})S{K_{{\text{BC}}}}}},{g^{{\xi _2}}}\} 调用算法OutDec(CT,OK,aux) \to C{T_{{\text{out}}}}得到外包解密密文C{T_{{\text{out}}}},该算法具体流程为:
CSP计算{\xi _1} \;=\; H({h^{({\gamma _1} + {\gamma _2})S {K_{{\text{BC}}}}}}{h^{({\gamma _1} + {\gamma _2})S {K_{{\text{CSP}}}}}}), {g^{\eta + \xi }} \;\;=\;\; o{k_8}{g^{{\xi _2}}}{g^{ - {\xi _1}}} = ({g^{\eta + {\xi _2}}}){g^{ - {\xi _1}}} ;基于线性秘密共享方案的子秘密还原过程,CSP构造常数{\{ {\omega _x} \in {\mathbb{Z}_p}\} _{x \in [l]}}和{\{ {\beta _y} \in {\mathbb{Z}_p}\} _{y \in [L]}},使其满足\sum {\omega _x}{{\boldsymbol{M}}_x} = (1,0, … ,0)和\sum {\beta _y}{{\boldsymbol{A}}_y} = (1,0, … ,0),其中{{\boldsymbol{M}}_x}代表矩阵{\boldsymbol{M}}的第x行、{{\boldsymbol{A}}_y}代表矩阵{\boldsymbol{A}}的第y行;CSP分别计算{E_1},{E_2},{E_3},{E_4},具体构造为:
\begin{aligned} {E_1}= & e(o{k_1},{g^{\eta + \xi }})= \\ & e({({g^{\alpha /(a + {z_j})}}g_1^r)^\eta },{g^\eta })e({({g^{\alpha /(a + {z_j})}}g_1^r)^\eta },{g^\xi }), \\ \end{aligned} \begin{aligned} {E_2} =& \prod\limits_x {[e(ok_{4}^{o{k_2}}o{k_3},{C_{1,x}})e(o{k_5},{C_{2,x}})e(o{k_6},{C_{3,x}})]}^{{\omega _x}}= \\ & \prod\limits_x [e({g^{\eta r{z_j}}}{g^{\eta ar}},g_1^{{\lambda _x}}g_4^{{t_x}})e({g^{\eta {r_\tau }}},{(g_2^{\delta (x)}{g_3})^{ - {t_x}}})\;\times\\ &e({(g_2^{{A_\tau }}{g_3})^{\eta {r_\tau }}}g_4^{ - (a + {z_j})r\eta },{g^{{t_x}}}){]^{{\omega _x}}} =\\ & \prod\limits_x {{{[e{{(g,{g_1})}^{\eta r(a + {z_j}){\lambda _x}}}]}^{{\omega _x}}}} = e{(g,{g_1})^{\eta rs(a + {z_j})}}, \end{aligned} \begin{aligned} {E_3} =& \prod\limits_y {{{[e(g_{1}^{o{k_2}}h,{C_{4,y}})e(o{k_7},{C_{5,y}})e(g_2^{o{k_2}},{C_{6,y}})]}^{{\beta _y}}}}= \\ & \prod\limits_y [e(g_{1}^{{z_j}}{g^a},{g^{{\alpha _{\rho (y)}}{t_y}}})e(g_1^{{\alpha _{\rho (y)}}(a + {z_j})},{g^{ - {t_y}}})\;\times \\ &e({g^{{z_j}}},{g^{{t_y}}}g_2^{{\theta _y}}){]^{{\beta _y}}} = {\prod\limits_y {e({g^{{z_j}}},g_2^{{\theta _y}})} ^{{\beta _y}}} = 1, \end{aligned} \begin{aligned} {E_4} =& e(o{k_1},C_0^{o{k_2}}C{'_0}) = e({({g^{\alpha /(a + {z_j})}}g_1^r)^\eta },{g^{s{z_j}}}{g^{as}}{g^\xi }) =\\ & e({({g^{\alpha /(a + {z_j})}}g_1^r)^\eta },{g^{s({z_j} + a)}})e({({g^{\alpha /(a + {z_j})}}g_1^r)^\eta },{g^\xi }) =\\ & e{({g^{\alpha s}},g)^\eta }e(g_1^{\eta r},{g^{s({z_j} + a)}})e({({g^{\alpha /(a + {z_j})}}g_1^r)^\eta },{g^\xi }), \end{aligned} CSP向DUj发送外包解密算法OutDec(),输出结果C{T_{{\text{out}}}} = {E_4}/({E_1}{E_2}{E_3}) = e{(g,g)^{\alpha s\eta }}/e((g^{\tfrac{\alpha}{a+z_j}}g_1^r)^{\eta},g^{\eta}).
4)DUj对C{T_{{\text{out}}}}调用算法 Dec(C{T_{{\text{out}}}}) \to m/ \bot 得到明文m,算法具体流程为:
\begin{gathered} key = C/(C{T_{{\text{out}}}}^{ \eta ^{-1}}e{(o{k_1},g) })= key \times e{(g,g)^{\alpha s}}/e{(g,g)^{\alpha s}}. \\ \end{gathered} DUj验证 m||H(m) = S De{c_{key}}({C_m}) 是否成立,若该等式成立,则表示DUj成功完成密文的访问;若不成立,则输出 \bot .
3.5 访问行为审计
在该阶段,DO通过BLS聚合签名[31]对审计目标fi{d_{\text{t}}}发起审计查询{T_{\text{Q}}};BC查询节点QN收到{T_{\text{Q}}}后,调用查询匹配算法QryInt()对索引词典元素进行隐私集合求交,其结果为审计目标fi{d_{\text{t}}}在索引词典中的元素ft{g_{\text{t}}};QN根据ft{g_{\text{t}}}指向的索引列表lis{t_{fi{d_{\text{t}}}}}找到审计目标fi{d_{\text{t}}}的访问记录{C_{req}}所在的区块编号,并调用身份追踪算法Trace()对访问记录中数据访问者身份进行抽取,并将结果返回给DO,从而实现密文场景下的用户访问行为身份审计,具体过程为:
1)DO调用算法 QryGen(fi{d_{\text{t}}},oSK) \to {T_{\text{Q}}} 生成审计查询 T_{{\mathrm{Q}}} ,DO随机选择\varphi \in G,令t{q_1} = e(P{K_{{\text{BC}}}},{H_3}(ft{g_{\text{t}}})\varphi ),t{q_2} = e(P{K_{{\text{BC}}}},oSK\varphi );DO将审计查询{T_{\text{Q}}} = \{ oid,t{q_1},t{q_2}\} 发送给BC查询节点QN.
2)查询节点QN调用算法 QryInt({T_{\text{Q}}},idx) \to \{ bn\} 得到区块编号集合 \{ bn\} . QN通过倒排索引idx的审计词典dic{t_{oid}}得到候选向量{\boldsymbol{cand}} = {(e(P{K_{{\text{BC}}}},{H_3}(ft{g_i})))_{i \in [dict]}},并基于{T_{\text{Q}}}计算tq_2' = t{q_2}/e{(P{K_{{\text{BC}}}},{H_3}(oid))^{aS{K_{{\mathrm{QN}},2}}}},进而通过求交运算{\boldsymbol{cand}} \cap (t{q_1}/tq_2')得到索引列表lis{t_{fi{d_{\text{t}}}}},QN通过lis{t_{fi{d_{\text{t}}}}}存储的区块编号标签ta{g_{bn}}定位到BC的第bn号区块,进而获得区块中存储的文件fid的访问记录密文{C_{req}} = S En{c_{ke{y_1}}}(req||ts)并对其解密:QN计算 ke{y_1} = e{(P{K_{{\text{BC}}}},oPK)^{aS{K_{{\mathrm{QN}},2}}}} ,得到访问记录(req||ts) = SDe{c_{ke{y_1}}}({C_{req}}),并从req中抽取出DU的外包解密密钥OK.
3)查询节点QN调用算法Trace(OK,aS{K_i}) \to uid得到数据访问者身份信息,算法具体流程为:
QN计算 ({o_{j,1}}||{o_{j,2}}) = SDe{c_{aS{K_{{\rm{QN}},2}}}}(o{k_2}) ,访问请求req所对应的DUj的身份信息ui{d_j} = SDe{c_{aS{K_{{\rm{QN}},2}}}}({o_{j,1}}),将{C_{uid}} = S En{c_{tq_2'}}(ui{d_j})发送给DO.
4)DO计算SDe{c_{e(P{K_{{\text{BC}}}},\varphi )}}({C_{uid}})得到DUj的身份信息ui{d_j}.
4. 方案分析
4.1 安全性证明
根据2.3节所述,本文方案的安全性证明包括选择性安全、审计正确性和审计过程的隐私安全. 在选择性安全证明部分,将证明本文方案的安全性和文献[23]的安全性在q-type假设下是等价的. 令{\Sigma _{{\text{RW}}}}和{\Sigma _{{\text{our}}}}分别代表文献[23]和本文的CP-ABE加密方案.
定理1. 若q-type假设成立,则{\Sigma _{{\text{our}}}}在2.3节的游戏模型下是选择性安全的.
证明. 假设存在多项式时间敌手\mathcal{A}对于挑战矩阵{{\boldsymbol{M}}^*}拥有 Ad{v_{\mathcal{A},{\Sigma _{{\text{our}}}}}} 的优势选择性攻破本文方案{\Sigma _{{\text{our}}}},其中{{\boldsymbol{M}}^*}为l \times n矩阵且满足约束l,n \leqslant q. 则能够构造多项式算法\mathcal{B},该算法拥有 Ad{v_{\mathcal{B},{\Sigma _{{\text{RW}}}}}} 的优势选择性攻破文献[23]方案{\Sigma _{{\text{RW}}}}.
1)初始化. 敌手\mathcal{A}将挑战访问策略 ({{\boldsymbol{M}}^*},{\delta ^ * }) 发送给算法\mathcal{B}和方案{\Sigma _{{\text{RW}}}},其中{{\boldsymbol{M}}^*}为l \times n矩阵且满足约束l,n \leqslant q,函数 {\delta ^ * }:{\{ 0,1\} ^l} \to {\mathbb{Z}_p} .
2)参数建立. {\Sigma _{{\text{RW}}}}将公共参数p{p_{{\Sigma _{{\text{RW}}}}}}发送给\mathcal{B},其构造为:
g = g\text{,}{g_1} = {g^d}\text{,} {g_2} = {g^{\tilde b}}\prod\limits_{(j,k) \in [l,n]} {{{({g^{{d^k}/b_j^2}})}^{{{M}}_{j,k}^*}}} \text{,} g_{3}=g^{\tilde c} \prod_{(j, k) \in [l, n]}\left(g^{d^{k} / b_{j}^{2}}\right)^{-{\delta}^{*}(j)M_{j, k}^{*}} \text{,} {g_4} = {g^{\tilde d}}\prod\limits_{(j,k) \in [l,n]} {{{({g^{{d^k}/{b_j}}})}^{{{M}}_{j,k}^*}}} \text{,} v = g_{}^{{d^{q + 1}} + \tilde \alpha } . \mathcal{B}随机选择a \in \mathbb{Z}_p^*,计算h = g_1^a和f = {g^a},通过p{p_{{\Sigma _{{\text{RW}}}}}}得到p{p_{{\Sigma _{{\text{our}}}}}} = \{ g,{g_1},{g_2},{g_3},{g_4},h,f,v,{v^{ - 1}}\} ,\mathcal{B}将p{p_{{\Sigma _{{\text{our}}}}}}发送给敌手\mathcal{A}.
3)查询阶段1. 敌手\mathcal{A}向算法\mathcal{B}提交(uid,S)以获取对应的解密密钥,\mathcal{B}将(uid,S)发送给{\Sigma _{{\text{RW}}}}以获得对应的解密私钥:
{\hat K_0} = {g^{\tilde \alpha }}{({g^d})^{\tilde r}}\prod\limits_{i = 2}^n {{{({g^{{d^{q + 2 - i}}}})}^{{\omega _i}}}} \text{,} {\hat K_1} = {g^{\tilde r}}\prod\limits_{i \in [n]} {{{({g^{{d^{q + 2 - i}}}})}^{{\omega _i}}}} \text{,} \begin{gathered} {{\hat K}_{\tau ,2}} = {g^{{{\tilde r}_\tau }}}{\prod\limits_{i' \in [l],{\delta ^*}(i') \notin S} {({g^{{b_{i'}}}})} ^{\tfrac{{\tilde r}}{{{A_\tau } - {\delta ^*}(i')}}}}\; \times\\ {\prod\limits_{i,i' \in [n,l],{\delta ^*}(i') \notin S} {({g^{{b_{i'}}{d^{q + 1 - i}}}})} ^{\tfrac{{{\omega _i}}}{{{A_\tau } - {\delta ^*}(i')}}}} ,\\ \end{gathered} {\hat K_{\tau ,3}} = \hat \varPsi \hat \varPhi ,其中
\begin{aligned} \hat \varPsi =& {(g_2^{{A_\tau }}{g_3})^{{{\tilde r}_\tau }}}{({{\hat K}_{\tau ,2}}/{g^{{{\tilde r}_\tau }}})^{\tilde u{A_\tau } + \tilde h}}\; \times \\ & \prod\limits_{(i{'},j,k) \in [l,l,n],{\delta ^*}(i{'}) \notin S} {{{\left({g^{\tfrac{{{b_{i{'}}}{d^k}}}{{b_j^2}}}}\right)}^{\tfrac{{\tilde r({A_\tau } - {\delta ^*}(j)){\boldsymbol{M}}_{j,k}^*}}{{{A_\tau } - {\delta ^*}(i{'})}}}}} \; \times\\ &\prod\limits_{\scriptstyle(i,i',j,k) \in [n,l,l,n],\atop \scriptstyle{\delta ^*}(i') \notin S,(i' \ne j \vee i \ne k)} {{{\left({g^{\tfrac{{{b_{i'}}{d^{q + 1 + k - i}}}}{{b_j^2}}}}\right)}^{\tfrac{{\tilde r({A_\tau } - {\delta ^*}(j)){\omega _i}M_{j,k}^*}}{{{A_\tau } - {\delta ^*}(i')}}}}} \text{,} \end{aligned} \hat \varPhi = g_4^{ - \tilde r}\prod\limits_{i \in [n]} {{{({g^{{d^{q + 1 - i}}}})}^{ - \tilde b{\omega _i}}}} \prod\limits_{(i,j,k) \in [n,l,n],i \ne k} {{{\left({g^{\tfrac{{{d^{q + 1 + k - i}}}}{{{b_j}}}}}\right)}^{ - {\omega _i}{\boldsymbol{M}}_{j,k}^*}}} . \mathcal{B}随机选择z \in \mathbb{Z}_p^*,令r = \tilde r/(a + z)和d{k_2} = z,随机选择g' \in G,计算d{k_1} = {({\hat K_0})^{1/(a + z)}},d{k_2} = z, d{k_3} = {({\hat K_1})^{a/(a + z)}}g' ,d{k_4} = {({\hat K_1})^{1/(a + z)}},d{k_5} = \{ {\hat K_{\tau ,2}}\} ,d{k_6} = \{ {\hat K_{\tau ,3}}\} ,d{k_7} = aP{K^{a + z}} \cdot g_2^z.
\mathcal{B}将(uid,S)对应的解密密钥 DK = {\{ d{k_i}\} _{i \in [7]}} 发送给\mathcal{A}.
4)挑战阶段. 敌手\mathcal{A}将2个等长的明文信息(ke{y_0}, ke{y_1})发送给算法\mathcal{B},\mathcal{B}将其提交给方案{\Sigma _{{\text{RW}}}}并获得其挑战密文:
\begin{aligned} &\{ \hat C = ke{y_\beta }T'e{(g,{g^s})^{\tilde \alpha }}\text{,}{\hat C_0} = {g^s}\text{,}\\ &{\hat C_{i,1}} = g_1^{{{\tilde \lambda }_i}}{({g^{s \cdot {b_i}}})^{ - \tilde d}}\prod\limits_{(j,k) \in [l,n],j \ne i} {{{({g^{s{d^k}{b_i}/{b_j}}})}^{ - {\boldsymbol{M}}_{j,k}^*}}} \text{,}\\ &{{\hat C}_{i,2}} = {({g^{s{b_i}}})^{ - (\tilde u{\delta ^*}(i) + \tilde c)}} \; \times\\ & \prod\limits_{(j,k) \in [l,n],j \ne i} {{{({g^{s{d^k}{b_i}/b_j^2}})}^{ - ({\delta ^*}(i) - {\delta ^*}(j)){\boldsymbol{M}}_{j,k}^*}}} , \\ &{\hat C_{i,3}} = {g^{{t_i}}} = {({g^{s{b_i}}})^{ - 1}}\} \text{,}\end{aligned} 其中T'是挑战项,{g^s}对应{\Sigma _{{\text{RW}}}}中的安全性假设.
\mathcal{B}基于返回密文构造CT' = \{ C = \hat C,{C_0} = {\hat C_0}, C_0' = {\hat C_0}^a, {\{ {C_{1,x}} = {\hat C_{i,1}},{C_{2,x}} = {\hat C_{i,2}},{C_{3,x}} = {\hat C_{i,3}}\} _{x \in [l]}}\} ,并将 \{ {C_{4,y}},{C_{5,y}}, {C_{6,y}}\} _{y \in [L]} 加入到CT'得到CT,然后\mathcal{B}将挑战密文CT发送给敌手\mathcal{A}.
5)查询阶段2. 该阶段和查询阶段1相同.
6)猜测阶段. 敌手\mathcal{A}将挑战密文的猜测结果\beta '发送给算法\mathcal{B},\mathcal{B}将\beta '发送给方案{\Sigma _{{\text{RW}}}}. 由于方案{\Sigma _{{\text{our}}}}的公共参数、解密密钥和挑战密文与方案{\Sigma _{{\text{RW}}}}拥有相同的分布,因此有Ad{v_{\mathcal{B},{\Sigma _{{\text{RW}}}}}} = Ad{v_{\mathcal{A},{\Sigma _{{\text{our}}}}}},即存在多项式时间敌手\mathcal{A}能够以 Ad{v_{\mathcal{A},{\Sigma _{{\text{our}}}}}} 优势攻破本文方案,则多项式算法\mathcal{B}能够以 Ad{v_{\mathcal{B},{\Sigma _{{\text{RW}}}}}} 优势攻破方案{\Sigma _{{\text{RW}}}},与文献[23]相矛盾. 因此,若q-type假设成立,本文方案是选择性安全的. 证毕.
定理2. 如果l-SDH假设成立,则本文方案在q < l条件下是可追踪的.
证明. 假设存在多项式时间敌手\mathcal{A}在与挑战者\mathcal{C}的O次交互后能够以不可忽略的优势Ad{v_\mathcal{A}}赢得2.3节的追踪游戏,则存在多项式算法\mathcal{B}能够通过敌手\mathcal{A}攻破l-SDH假设. 为不失普遍性,在下面的证明过程中,我们将省略授权代理AAi和数据使用者DUj的对应下标(i,j).
1)参数建立阶段. 算法\mathcal{B}对于给定的l-SDH实例 \{ G,{G_T},e,p,\bar g,{\bar g^x},{\bar g^{{x^2}}}, … ,{\bar g^{{x^l}}}\} 构造系统参数.
2)查询阶段. 敌手\mathcal{A}构造O次密钥查询,挑战者\mathcal{C}对所有密钥查询依次响应并发送对应的解密密钥给敌手\mathcal{A}.
3)挑战阶段. 敌手\mathcal{A}将挑战密钥DK发送给挑战者\mathcal{C},若DK能够通过密钥检测公式: e(d{k_6},g)e(uP{K_2}, d{k_4}) = e(dk_5^{{A_\tau }},{g_2})e(d{k_5},{g_3}) ,则敌手\mathcal{A}能够成功伪造有效的解密密钥,并实现解密密钥的不可追踪性,同样地,算法\mathcal{B}能够通过DK伪造({z^*},{g^*}) \in \mathbb{Z}_p^* \times G使其满足{g^*} = {\bar g^{1/(a + z)}}攻破l-SDH假设;由于外包解密密钥是由解密密钥转换得到且d{k_2} = o{k_2},同时外包解密密钥OK通过Gamma签名与用户的公钥绑定,因此敌手\mathcal{A}同样无法伪造外包解密密钥.
由于l-SDH假设对于多项式时间算法是不可解的,多项式时间敌手\mathcal{A}无法以不可忽略的优势Ad{v_\mathcal{A}}赢得追踪游戏,因此基于本文方案构造的解密密钥是可追踪的. 证毕.
定理3. 本文方案构造的倒排索引结构及查询过程和返回结果是语义安全的.
证明. 多项式时间敌手\mathcal{A}选择2个包含相同文件数量的文档集合{\varPi _0},{\varPi _1},并将其发送给挑战者\mathcal{C}. \mathcal{C}随机选择\beta = \{ 0,1\} ,对{\varPi _\beta }中的文件名{\{ fi{d_i}\} _{i \in [|{\varPi _\beta }|]}}依次生成文件名标签{\{ ft{g_i}\} _{i \in [|{\varPi _\beta }|]}}并构造索引词典dict. 敌手\mathcal{A}被允许访问查询生成算法和索引匹配算法,若\mathcal{A}无法以高于1/2的概率正确地猜测\beta 的结果,则本文构造的倒排索引结构、查询过程和返回结果是语义安全的.
1)索引隐私. 倒排索引idx由索引词典dict和索引列表list组成,由于dict和list中的元素均由伪随机函数F生成,且生成参数包含Diffie-Hellman密钥交换参数,因此敌手\mathcal{A}无法以关键词猜测攻击的方式构造dict和list中包含的文件名标签ftg和区块编号标签ntg,因此\mathcal{A}无法以不可忽略的优势正确地猜测出\beta 的结果.
2)查询隐私. 在审计查询{T_{\text{Q}}} = \{ oid,t{q_1},t{q_2}\} 中,t{q_1}由ft{g_{\text{t}}}和随机元素\varphi 生成,t{q_2}由DO私钥oSK和随机元素\varphi 生成,根据Decisional Bilinear Diffie-Hellman假设和BLS签名安全性证明,敌手\mathcal{A}无法从审计查询{T_{\text{Q}}}推测出DO的审计目标明文;并且由于随机元素\varphi 的存在,为相同审计目标的查询输出引入了随机性.
3)访问模式隐私. DO的审计结果以密文形式获得,由于加密密钥e(P{K_{{\text{BC}}}},\varphi )中包含了随机元素\varphi ,使得相同文件的审计结果在不同的审计查询中的返回结果也并不相同. 因此,敌手\mathcal{A}无法从返回结果中推测出DO的审计目标.
综上所述,本文方案构造的倒排索引结构及查询过程和返回结果是语义安全的. 证毕.
4.2 功能分析
功能性和方案开销是评估CP-ABE密文数据共享方案是否实用的2项重要指标. 在本节中,本文方案与现有相关研究[4,6,13,19,28,32]分别在功能性与方案开销方面进行对比.
本文方案主要关注如何在跨域密文数据共享服务下实现用户访问行为的可审计功能,因此,本文方案主要在可扩展性、跨域共享、可追踪性和行为审计4个应用和安全功能进行对比. 对比结果如表2所示.
1)可扩展性是指方案的初始化过程采用大属性域技术构造,生成的系统公共参数规模固定,当系统中访问属性集合中的元素数量发生变化时,系统无需对公共参数进行更新. 根据3.1节中Setup()算法的具体流程可知,本文方案的系统公共参数pp由9个双线性群G的元素构成,其参数规模不会跟随用户访问属性规模的增长而变化,因此本文方案具有较好的可扩展性,尤其当系统用户规模较大、需要更多用户属性对其进行描述时,本文方案支持用户属性的动态变化,且方案公共参数的存储开销不会受其影响. 此外,对比文献[4, 6, 19, 28]中的公共参数规模固定,具备可扩展性,对比文献[13, 32]中的公共参数中包含了访问属性集合所构成的参数,因此对比文献[13, 32]在属性规模变化时需要重新生成公共参数,不具备可扩展性.
2)跨域共享是指方案支持多个授权代理在不同的管理域中对用户的访问属性进行管理,并为该管理域中的用户生成解密密钥,在用户访问密文时,无需考虑该用户的解密密钥是由哪个授权代理生成,只需要该解密密钥对应的访问属性满足密文中内嵌的访问策略就能够完成解密,跨域共享功能可以解决单密钥生成中心存在的性能与安全瓶颈,是一种更符合现实场景的应用功能. 在3.2节的KeyGen()算法中,数据访问者uidj所属的AAi基于全体AA的公钥aPK构造对应的解密密钥dki,j,7. 在3.3节的Enc()算法中,DO通过构建2个访问结构(M,δ)和(A,ρ)分别对访问属性对应的秘密s和授权代理对应的秘密0进行线性共享,并把生成的子秘密λx和θy参与到数据加密过程,其中密文C4,y,C5,y,C6,y对应授权代理的子秘密θy. 在3.4节的OutDec()算法中,CSP基于线性秘密共享机制对授权代理的子秘密θy进行还原,其具体过程对应3.4节OutDec()算法中参数E3的计算. 总体来说,通过在密钥生成算法、加密算法和外包解密算法中引入线性秘密共享机制使得DU能够采用跨域访问策略对数据进行加密,并允许不同授权代理管理的授权用户访问外包密文. 因此,本文方案具有跨域共享性质,出于相似的构造过程,文献[28]同样具有跨域共享性质,且文献[4, 6, 13, 19, 32]不具备该性质.
3)可追踪性是指方案的用户解密密钥基于白盒可追踪机制生成,系统在用户解密密钥生成过程中,将用户的身份信息内嵌入解密密钥当中,当系统发现解密密钥发生泄露后,能够从解密密钥中还原得到该用户的身份信息. 在3.2节的KeyGen()算法中基于白盒可追踪机制将用户的身份信息内嵌于解密密钥中,即数据访问者的身份信息uidj被加密为随机数zj,并参与解密密钥dki,j的生成. 在3.3节密文数据访问过程的外包密钥OK的生成过程中保证了dki,j,2=oki,j,2=zj. 在3.5节的Trace()算法中,AAi(查询节点QN)能够利用私钥aSKi,2对zj解密得到该密钥所对应的DU身份信息uidj. 因此,该方案和其他使用白盒可追踪机制的对比文献[6, 13, 32]具有解密密钥的可追踪性,对比文献[4, 19, 28]则不具有可追踪性.
4)行为审计是指系统能够对授权用户的每一次合法访问操作进行身份审计,系统通过BC中记录的用户访问请求来获取该访问行为所对应的外包解密密钥,并通过白盒可追踪性从外包解密密钥中获取该密文访问行为所对应的用户身份信息,从而完成访问行为身份审计,需要注意的是文献[32]的行为审计功能仅能够对数据更新操作进行身份审计,而本文行为审计是针对授权用户的所有数据访问行为进行身份审计操作,具有更强的适用性. 本文方案的行为审计基于解密密钥的可追踪性实现,在3.4节密文数据访问过程中,BC对数据访问者的访问请求req加密后进行存储,由于req中包含用户的外包解密密钥OK,因此在3.5节的访问行为审计过程中,AAi(查询节点QN)能够利用私钥aSKi,2对其解密得到该密钥所对应的数据使用者身份信息uidj,进而实现授权用户访问行为的身份审计. 对比文献[19, 32]具备行为审计性质,对比文献[4, 6, 13, 28]不具备访问行为性质.
方案开销对比结果如表3所示,方案开销对比包括公共参数、解密密钥和密文的存储开销,以及加密算法、解密密钥生成算法和外包解密算法的计算开销. 符号|U|表示整个属性域的数量,|S|表示用户属性集合的数量;|l|表示访问控制矩阵M的行数,即用户属性的数量;|L|表示访问控制矩阵A的行数,即授权集合AA的数量;|G|,|GT|,|\mathbb{Z} p|分别表示双线性群G,GT和随机数所需的存储空间;σ表示文献[19]中允许用户下载文件的最大次数;tG和tGT分别表示双线性群G和{G_T}上一次指数运算的时间开销,te表示双线性映射e:G \times G \to {G_T}的时间开销. 表4给出了本文方案11个算法的具体开销,其中包括参数的存储开销和算法的计算开销,而忽略了哈希算法、对称加密算法和伪随机函数算法的计算开销. 其中,|dict|表示索引词典中元素个数.
表 3 存储开销与计算开销对比Table 3. Comparison of Storage Overhead and Computation Overhead方案 存储开销 计算开销 公共参数 解密密钥 密文 加密算法 解密密钥生成算法 外包解密算法 文献[4] 4|G|+2|GT| (6+3|S|)|G| (3+3|l|)|G|+|GT| (3+3|l|)tG+tGT (6+3|S|)tG (3+6|l|)tG+6te 文献[6] 6|G|+|GT| (3+2|S|)|G| (2+3|l|)|G|+|GT| (2+3|l|)tG+tGT (3+2|S|)tG (2+3|l|)te 文献[13] (12+2|U|)|G|+2|GT| (8+2|S|)|G| (6+4|l|)|G|+|GT| (4+6|l|)tG (5+|S|)tG (1+2|l|)te 文献[19] 7|G|+|GT| (2+2|S|)|G| (2+3|l|+σ)|G|+|GT| (2+3|l|+σ)tG+tGT (2+2|S|)tG (1+6|l|)tG+3(1+|l|)te 文献[28] 4|G|+|GT| (3+|S|)|G| (1+4|l|)|G|+|GT| (1+6|l|)tG+tGT (3+3|S|)tG (1+4|l|)te 文献[32] (7+|U|)|G|+|GT| (2+|S|)|G| (3+|l|)|G|+|GT| (3+|l|)tG+tGT (3+2|S|)tG+(1+|S|)tGT (3+6|l|)te 本文 9|G| (3+2|S|+|L|)|G|+|\mathbb{Z} p| (2+3|l|+3|L|)|G|+|GT| (2+3|l|+3|L|)tG+tGT (6+2|S|+|L|)tG tG+3(1+|l|+|L|)te 表 4 本文方案中各算法的参数存储开销与算法计算开销Table 4. Storage Overhead and Computation Overhead for Parameters of Each Algorithm in Our Scheme算法 参数 参数存储开销 算法计算开销 Setup() pp, msk 9|G|, |{\mathbb{Z}} p| 4tG AASetup() aPK, aSK |L||G|, 2|L||{\mathbb{Z}} p| |L|tG EntSetup() PKBC, SKBC
PKCSP, SKCSP|G|, |{\mathbb{Z}} p|
|G|, |{\mathbb{Z}} p|tG
tGKeyGen() oPK, oSK
uPK, uSK, uDK|G|, |G|
2|G|, |{\mathbb{Z}} p|, (3+2|l|+|L|)|G|+|{\mathbb{Z}} p|tG
2tG, tG, (6+2|S|+|L|)tGEnc() aux, CT 2|G|, (2+3|l|+3|L|)|G|+|GT| 3tG, (2+3|l|+3|L|)tG+tGT IdxGen() idx |dict||G| |dict|tG OutDec() OK, CTout (4+2|l|+|L|)|G|+|\mathbb{Z} p|, |GT| 4+2|l|tG, tG+3(1+|l|+|L|)te Dec() 3te QryGen() TQ 2|GT| 2(tG+te) QryInt() (2+|dict|)te Trace() 0tG+0tGT+0te 4.3 倒排索引存储与更新开销
根据3.3节所述,DO在数据加密阶段,调用IdxGen()算法将待加密上传的明文数据m所对应的文件名fid生成文件名标签ftg,基于文件名标签生成倒排索引的索引词典dict并发送给BC查询节点QN进行存储,其中dict[i]=ftgi. 根据表4所示,DO执行IdxGen()算法的计算开销为|dict|tG,存储开销为|dict||G| ,QN处的存储开销为|dict||G| .
根据3.4节所述,DU在密文数据访问阶段,向BC发送访问请求req={oid,H(fid), OK},BC查询节点QN根据访问请求req生成访问请求密文Creq,并将Creq以交易事务的形式存储在新建区块之中,并基于该区块编号bn生成编号标签ntgbn,并将ntgbn插入到索引词典dict中元素ftgfid所对应的索引列表listfid中,该更新过程由QN完成,QN的计算开销为|list|tG,存储开销为|dict||list| . 由于DU需要生成访问请求req以访问云端密文数据,因此,倒排索引的更新过程不会给DU带来额外的计算、存储开销. 因此,在QN处倒排索引构建和更新过程存储开销为(|dict|+|dict||list|)|G| .
根据3.5节所述,DO在访问行为审计阶段,调用QryGen()算法对审计目标fidt发起审计查询TQ,BC查询节点QN收到TQ后调用QryInt()算法通过隐私集合求交技术对审计查询TQ和倒排索引词典dict进行求交,进而得到存储审计目标fidt访问信息密文Creq的区块编号标签ntg. 根据表4所示,DO执行QryGen()算法的计算开销为2(tG+te),存储开销为2|GT|,QN执行QryInt()算法的计算开销为(2+|dict|te).
本文引入倒排索引的目的是针对遍历区块中存储访问请求密文数据的审计操作而设计的优化方法,根据上述描述,倒排索引的存储和更新过程大部分由BC中的查询节点QN完成,不会给DO和DU带来较大的计算、存储开销. 同时根据表5所示,当索引词典规模|dict|=20和索引列表长度|list|=50时,查询节点QN对于单个用户的倒排索引存储、维护和查询开销是可接受的.
表 5 倒排索引存储与计算开销Table 5. Inverted Index Storage and Calculation Overheads索引各
个阶段客户端 查询节点QN端 存储开销/kb 计算开销/ms 存储开销/kb 计算开销/ms 索引生成 229.2 20 索引更新 1020 573 索引查询 2 25.9 120.25 5. 实 验
5.1 实验参数设置
本文及对比方案在Windows 10操作系统上(AMD Ryzen 4800H 2.90 GHz CPU, 16 GB内存)进行了仿真实验,所有方案均基于jPBC(Java pairing based cryptography)[33]实现,BC功能通过Caliper[34]工具在Docker环境中部署Fabric Blockchain模拟平台,其中包含2个主节点、1个排序节点和1个查询节点,并设置AA的数量为4,使用A类椭圆曲线构建双线性群G和{G_T},其中用户下载最大次数σ=20,|{\mathbb{Z}_p}|=160 b,|G| = |{G_T}|=1024 b. 伪随机函数和对称加密算法采用AES-128.
5.2 存储开销对比
本节将对本文方案和对比文献[4, 6, 13, 19, 28, 32]进行公共参数、解密密钥和密文的存储开销对比.
1)公共参数存储开销对比. 进行公共参数存储开销对比的目的是验证方案的可扩展性,即验证当系统中访问属性域的规模增长时公共参数规模的变化情况. 根据系统初始化算法Setup()所示,本文方案公共参数包含9个双线性群G元素、需要9216 b的存储开销,公共参数存储开销为常数. 本文方案与对比方案的公共参数存储开销如图3所示,当用户属性|S|=100时,本文方案公共参数规模为9.22 kb,文献[4, 6, 13, 19, 28, 32]公共参数规模分别为6.14 kb,7.17 kb,219.14 kb,8.19 kb,5.12 kb,24.19 kb.
本文方案与文献[4, 6, 19, 28]中的公共参数均使用大属性域技术构建,如图3所示,上述方案的公共参数规模不会跟随横坐标的属性数量的增长而变化. 此外根据表2所示,本文方案相较于文献[4, 6, 19, 28]在功能性方面覆盖更为全面,因此,在3.1节参数构建部分额外设置必要的参数来支持系统功能. 例如,相较于文献[6],为了实现跨域数据共享和访问行为审计,在公共参数构建过程中增加了参数h, v, v−1. 相较于文献[28],为了实现用户密钥的可追踪性和访问行为审计,在公共参数构建过程中增加了参数g4, h, f, v, v−1,该参数分别在3.2节和3.3节中参与了KeyGen()算法、辅助解密信息生成过程和Enc()算法. 如上所述,本文方案在实用性和存储开销方面进行了一定的平衡,使得本文方案在功能性方面获得一定优势,但在公共参数存储开销方面要略高于文献[4, 6, 19, 28];同时,由于文献[13, 32]的公共参数构建过程并未采用大属性域技术,其公共参数规模随着属性数量的增长而扩大,本文方案的公共参数存储开销要优于文献[13, 32].
2)解密密钥存储开销对比. 进行解密密钥存储开销对比的目的是验证方案中授权代理生成用户解密密钥时所需的通信代价以及DU使用访问密钥而付出的存储代价. 根据用户密钥生成算法KeyGen()所示,用户的解密密钥包含3+2|S|+|L|个双线性群G元素和1个常数项,其中|S|表示用户访问属性的数量,|L|表示系统中AA的数量. 本文方案与对比方案的解密密钥存储开销如图4所示,当用户属性|S|=100时,本文方案解密密钥规模为211.96 kb,文献[4, 6, 13, 19, 28, 32]解密密钥规模分别为313.34 kb,207.87 kb,212.99 kb,206.85 kb,105.47 kb,104.45 kb.
从图4可以看出,本文方案与其他对比方案的解密密钥规模均伴随用户访问属性规模的增长而提升. 造成本文方案解密密钥存储开销较大的原因在于本文方案为了支持跨域共享功能,需要在用户解密密钥中额外加入|L|个授权代理的属性,该属性对应解密密钥的dki,j,7. 从表3可以看出,若本文方案不再支持跨域共享功能,则解密密钥将包含3+2|S|个双线性群G元素和1个常数项,其规模则略高于文献[28,32],但在功能性方面依然优于文献[28,32].
3)密文存储开销对比. 进行密文存储开销对比的目的是验证方案的加密和上传过程给DO带来的通信开销以及给CSP带来的存储开销. 根据加密算法Enc()所示,本文方案密文包含(2+3|l|+3|L|)|G|+|GT|个双线性群G和GT元素,其中|l|表示数据拥有者构造访问策略所需的属性数量. 本文方案与对比方案的密文存储开销如图5所示,当访问属性|l|=100、授权代理数量|L|=20时,本文方案密文规模为322.56 kb,文献[4,6,13,19,28,32]密文规模分别为311.30 kb,310.27 kb,416.77 kb,330.75 kb,411.65 kb,106.50 kb.
从图5可以看出,本文方案与其他对比方案的密文规模均伴随用户访问属性规模的增长而提升. 造成本文方案密文存储开销逊于文献[4,6,32]的原因在于本文方案为了让来自不同授权代理所属的管理域中的授权用户能够正常完成解密操作,需要在加密过程中在密文内额外增加3|L|个双线性群G元素,对应密文C4,y,C5,y,C6,y,该部分与解密密钥的dki,j,7相对应. 从表3可以看出,本文方案的密文规模受访问属性数量和授权代理数量影响,当授权代理数量发生变化时,本文方案的密文存储开销也会发生变化,由于在实际应用中,授权代理的数量一般保持不变,因此本文方案密文规模也相对稳定.
5.3 计算开销对比
1)加密算法计算开销对比. 进行加密算法计算开销对比的目的是验证DO在加密明文数据时在本地带来的时间开销,由于加密算法涉及大量的双线性群上的指数运算和双线性运算,因此加密算法计算开销越小则表明加密过程所需的等待时间越小,给DO端带来的计算开销也越小. 根据表3所示,本文方案加密算法主要包含2+3|l|+3|L|个双线性群G上的指数运算和1个双线性群GT上的指数运算. 当访问属性|l|=100、授权代理数量|L|=20时,本文方案加密算法所需的时间开销为3.60 s,文献[4, 6, 13, 19, 28, 32]加密算法所需的时间开销分别为1.19 s,3.46 s,6.92 s,6.01 s,6.89 s,1.18 s.
从图6可以看出,本文方案与其他对比方案的加密算法时间开销均伴随用户访问属性规模的增长而提升. 造成本文方案加密算法计算开销高于文献[4, 6, 32]的原因在于本文方案为了实现跨域共享功能,在加密过程中需要额外计算3|L|个双线性群G元素,对应密文C4,y,C5,y,C6,y. 从表3可以看出,本文方案的加密算法时间开销受访问属性数量和AA数量影响,当授权代理数量发生变化时,本文方案的加密算法时间开销也会发生变化,由于在实际应用中,AA的数量一般保持不变,因此本文方案加密算法的时间开销也相对稳定.
2)解密密钥生成算法计算开销对比. 进行解密密钥生成算法计算开销对比的目的是验证DU在向AA注册时所需要的响应时间. 根据表3所示,本文方案解密密钥算法主要包含6+2|S|+|L|个双线性群G上的指数运算. 当用户属性|S|=100、授权代理数量|L|=20时,本文方案解密密钥生成算法所需的时间开销为2.38 s,方案[4,6,13,19,28,32]解密密钥生成算法所需的时间开销分别为3.51 s,2.33 s,1.20 s,2.31 s,3.47 s,2.48 s.
从图7可以看出,本文方案与其他对比方案的解密密钥生成算法时间开销均伴随用户访问属性规模的增长而提升. 造成本文方案加密算法计算开销高于文献[6,13,19]的原因在于本文方案为了实现跨域共享功能,在解密密钥生成过程中需要额外计算|L|个双线性群G元素,该元素对应解密密钥的dki,j,7.
3)外包解密算法计算开销对比. 进行外包解密算法计算开销对比的目的是验证DU在访问云端密文数据时所需要等待的时间开销,由于外包解密算法涉及大量的双线性群上的指数运算和双线性运算,因此加密算法计算开销越小则表明外包解密过程所需的计算量越小,给云端带来的计算开销也越小. 根据表3所示,本文方案外包解密算法主要包含1个双线性群G上的指数运算和3(1+|l|+|L|)个双线性运算. 当访问属性|l|=100、授权代理数量|L|=20时,本文方案外包解密算法所需要的时间开销为1.72 s,文献[4,6,13,19,28,32]外包解密算法所需的时间开销分别为6.94 s,1.65 s,1.10 s,8.54 s,2.19 s,3.30 s.
从图8可以看出,本文方案与其他对比方案的外包解密算法时间开销均伴随用户访问属性规模的增长而提升. 造成本文方案外包解密算法计算开销高于文献[6, 13]的原因是在外包解密过程中需要额外计算3|l|个双线性运算将密文的C4,y,C5,y,C6,y部分和解密密钥中的dki,j,7相互抵消. 本文方案的外包解密算法计算开销受访问属性数量和AA数量的影响,当AA数量发生变化时,本文方案的外包解密算法时间开销也会发生变化,由于在实际应用中,AA的数量一般保持不变,因此本文方案外包解密算法计算开销也相对稳定.
5.4 倒排索引存储与计算开销
为了评估加密倒排索引对BC上遍历区块中密文内容的优化效果,我们将审计目标文件的访问记录以随机分布的方式存储于BC的区块中,令|S|=10,|L|=4,令Hyperledger Fabric区块大小为2 MB,交易事务大小为3 KB,在考虑区块头部和Merkle Tree结构的存储开销情况下,一个区块中最多能够存储668个交易事务;假设目标文件访问记录的数量为区块数量的5%,依据分布情况构造对应的加密倒排索引,其中倒排索引词典包含的最大元素数量|dict|=20,传统的BC数据查询方法即基准方法(baseline),需要对BC中每个区块进行遍历并对其内容进行解密,本文的审计查询方法的时间开销则包括索引生成算法IdxGen()、审计生成算法QryGen()、查询匹配算法QryInt()和身份追踪算法Trace()的时间开销总和.
根据表4可知,本文方案审计查询方法与区块规模无关,仅与DO外包文件数量和文件访问次数成正比,在不同的区块数量规模下,索引的生成、维护与查询的开销较小. 在索引词典规模|dict|=20和索引列表长度|list|=50的约束条件下,表5列出了倒排索引在生成、更新、查询过程中在客户端和BC查询节点QN端的存储与计算开销,可以看出本文提出的倒排索引对客户端用户(DO和DU)是资源消耗友好的.
图9给出了基准方法与本文方法在时间开销上的对比,可以看出基准方法的时间开销随着区块数量的增长而线性增长,而本文的基于索引查询方法的时间开销则随着区块数量的增长以较低趋势增长,即本文所提出的加密倒排索引结构对于区块中密文数据的遍历优化是有效的.
根据表2、表3的理论分析和图3~8的实验结果对比可知,本文方案在付出可接受的存储开销和计算开销代价的情况下,在基于属性加密的密文共享领域提出了一个实用且安全合规的跨域密文数据共享方案,本文方案支持密文场景的访问行为身份追踪,这是现有研究所没有实现的;同时实验证明了引入的加密倒排索引结构能够有效提升BC中密文数据的遍历效率. 因此,本文方案是实用且高效的.
6. 结 论
被广泛应用于云环境数据共享的属性基加密机制因其访问授权的匿名性,在敏感数据应用场景(例如EHR数据共享)还存在安全性与合规性问题. 本文基于密文策略属性基加密(CP-ABE)机制设计了支持访问行为身份追踪的跨域密文共享方案,并引入倒排索引结构优化访问行为身份追踪效率. 在后续的工作中,我们将考虑通过可追踪属性签名[32]技术对访问请求的构造过程进一步优化,实现访问权限的撤销功能和设计支持复杂审计功能的索引结构也是未来的研究方向.
作者贡献声明:申远提出了方法思路和实验方案设计,并撰写论文;宋伟负责改进方案并修改论文;赵常胜完成实验;彭智勇提出指导意见并修改论文.宋伟(songwei@whu.edu.cn)和彭智勇(peng@whu.edu.cn)为通信作者.
-
表 1 KPI数据类型总结
Table 1 Summary of KPI Data Types
KPI类型 释义 举例或表示 变量或维度域
数目不同单变量KPI 每个时间点由单一元素表示的KPI
(该元素一般代表度量域中的单个度量值){\boldsymbol{X}}=({x}_{1},\;{x}_{2},\;…,\;{x}_{n}),\;\forall {X}^{(t)}={x}_{t}\in \mathbb{R} 多变量KPI 每个时间点由含M个元素的向量表示的KPI
(该向量一般代表度量域中的多个度量值){\cal{\boldsymbol{X}}}=({\boldsymbol X}_{1},\;{\boldsymbol X}_{2},\;…,\;{\boldsymbol X}_{M}),\;\forall {\cal{\boldsymbol{X}}}^{(t)}={{\boldsymbol{X}}}_{1:M}^{(t)}\in {\mathbb{R}}^{M},\;M\ge 1\in {\mathbb{N}}_{+} 矩阵变量KPI 每个时间点由M×E的2维矩阵表示的KPI
(矩阵的行向量和列向量分别代表度量域和实体域)\bar{\cal{\boldsymbol{X}}}=({\cal{\boldsymbol X}}_{1},\;{\cal{\boldsymbol X}}_{2},\;…,\;{\cal{\boldsymbol X}}_{E}),\;\forall {\bar{\cal{\boldsymbol{X}}}}^{(t)}={\cal{\boldsymbol{X}}}_{1:E}^{(t)}\in {\mathbb{R}}^{M\times E},E\ge 1\in \mathbb{N}_{+} 形态特点不同 周期性KPI 呈现固定变化规律的KPI 见图1(a) 非周期性KPI 无固定变化规律的KPI 见图1(b)(c) 噪声分布不同 平滑KPI 具有对角多元高斯噪声的KPI 复杂KPI 非高斯噪声分布的KPI 监控来源不同 服务KPI 反映服务质量的业务级KPI 页面浏览量、在线用户数及响应时间等 机器KPI 反映机器状态的实体级KPI CPU利用率、内存利用率及吞吐量等 表 2 互联网服务KPI异常检测数据集
Table 2 Datasets for KPI Anomaly Detection on Internet-Based Services
表 3 KPI异常检测中的可解释性指标
Table 3 Interpretability Metrics of KPI Anomaly Detection
典型工作 可解释性指标 释义 OmniAnomaly[41] HitRate@P\% = \dfrac{{Hit@\left\lfloor {P\% \times \left| {{\boldsymbol{G}}{{\boldsymbol{T}}_t}} \right|} \right\rfloor }}{{\left| {{\boldsymbol{G}}{{\boldsymbol{T}}_t}} \right|}} {\boldsymbol{GT}}_{{t}} 表示真实异常度量的排序数组,P=100或150, Hit@\left\lfloor {P\% \times \left| {{\boldsymbol{G}}{{\boldsymbol{T}}_t}} \right|} \right\rfloor 表示模型在 \lfloor P\% \times | {{\boldsymbol{G}}{{\boldsymbol{T}}_t}} | \rfloor 下的异常度量命中数量 DAEMON[46] RDCG@P\% = \displaystyle\sum\limits_{i=1}^{\left| {{{\boldsymbol{G}}_{{x_t}}}} \right|} {\dfrac{{{v_i}}}{{{\text{lb}}\left( {{d_i} + 2} \right)}}} 在HitRate@P%基础上考虑不同异常度量的重要性,其中,vi表示第i个度量是否命中(vi = 1或vi = 0),di表示真实异常度量排序集合中i的位置索引与模型检测到的异常度量排序集合中i的位置索引间的距离 InterFusion[40] IPS = \displaystyle\sum\limits_{a = 1}^A {\dfrac{{{w_a}\left| {{{\boldsymbol{G}}_{{\phi _a}}} \cap {{\boldsymbol{I}}_{{\phi _a}}}} \right|}}{{\left| {{{\boldsymbol{G}}_{{\phi _a}}}} \right|}}} ,{w_a} = \dfrac{{{N_{{\phi _a}}}}}{{\displaystyle\sum\limits_{a = 1}^A {{N_{{\phi _a}}}} }} 在HitRate@P%基础上考虑异常段级的可解释性,其中, {N_{{\phi _a}}} 表示异常段 {\phi _a} 的长度, {w_a} 用于衡量该异常段在所有异常段中的重要性 表 4 KPI监控体系
Table 4 KPI Monitoring System
监控层次 监控范围 相关KPI 基础资源 主要对服务中的硬件设备、虚拟机或容器集群等资源进行监控 CPU利用率、网络接口流量、丢包数、吞吐量等 应用性能 主要对服务中的可用性状态、应用处理能力、业务运营状态等应用性能进行监控 页面浏览量、服务响应时间、交易量、在线用户数等 用户体验 主要对用户真实访问体验及反馈意见进行监控 首屏时间、下载速度、用户反馈文本中某些关键词组合出现的频率[47]等 表 5 KPI依赖模式挖掘能力对比
Table 5 Comparison of Mining Ability for KPI’s Dependency Patterns
机器学习模型 时序依赖性 度量依赖性 实体依赖性 传统机器学习模型
(人工提取统计特征)传统机器学习模型
(人工提取预测误差特征)传统机器学习模型
(人工提取时序特征)传统机器学习模型
(人工提取相关性特征)时间序列聚类 RNN LSTM GRU 1维CNN TCN Transformer 非序列-重构神经网络 序列-重构神经网络 图神经网络 注:颜色越深表示该模型相应的挖掘能力越强. 表 6 KPI异常检测的模型选择动机
Table 6 Motivation for Model Selection of KPI Anomaly Detection
KPI场景 机器学习模型 模型选择动机
(主要动机是挖掘KPI依赖模式的能力)代表性工作 单变量KPI 传统机器学习模型(人工提取统计特征) 挖掘短期时序依赖 文献[67–70,73–74] 传统机器学习模型(人工提取预测误差特征) 挖掘趋势及偏离预测的异常模式 文献[6,35,47,66–68,71] 传统机器学习模型(人工特征提取时序特征) 挖掘长期时序依赖及剧烈变化的异常模式 文献[66–67,69–70,75] 传统机器学习模型(人工特征提取小波特征) 挖掘频域模式有利于检测波动性KPI异常 文献[68] 时间序列聚类(DBSCAN)+传统机器学习模型 挖掘周期性模式的相似性 文献[66,69–71,77,86–88] 序列神经网络(RNN) 挖掘短期时序依赖 序列神经网络(LSTM) 挖掘长期时序依赖 文献[78–81] 序列神经网络(GRU) 挖掘长期时序依赖 序列神经网络(1维CNN) 挖掘长期时序依赖,缓解梯度消失,训练快 文献[37,82–83] 序列神经网络(TCN) 挖掘长期时序依赖,扩大卷积核的感受野 文献[83] 多变量KPI 传统机器学习模型(人工提取相关性特征) 挖掘度量依赖 文献[72] 重构神经网络(AE) 挖掘度量依赖 文献[89–91] 重构神经网络(VAE) 挖掘度量依赖且缓解过拟合问题 文献[56,87,92–94] 序列-重构神经网络 挖掘时序、度量依赖的混合模式 文献[38,40–41,48,58,95,104–107,110] Transformer及其变体 挖掘时序、度量依赖的混合模式,训练快 文献[96–103,108] 聚类+重构神经网络 挖掘不同实体中时序、度量依赖的混合模式 文献[38] 切换高斯模型+重构神经网络 挖掘不同实体中时序、度量依赖的混合模式 文献[110] 矩阵变量KPI 图卷积网络 挖掘时序、实体(空间)依赖的混合模式 文献[111–112] 图注意力网络 挖掘时序、实体依赖的混合模式 文献[45] 表 7 以准确性目标为核心的KPI异常检测技术
Table 7 Accuracy-Centric KPI Anomaly Detection Techniques
代表性
工作主要模型 准确性提升方式 文献[6] 随机森林分类 利用随机森林分类进行二次学习,设计动态阈值②④ 文献[68] 随机森林分类 利用随机森林分类进行二次学习② 文献[115] 随机森林回归 集成学习② 文献[69] 孤立森林 改进孤立森林中的切割算法③ 文献[66] 混合模型(聚类+随机森林) 利用主动学习修正错误结果②③④ 文献[67] 混合模型(聚类+随机森林) 提取多角度特征①② 文献[71] 混合模型(聚类+随机森林) 引入半监督学习框架CPLE②③ 文献[117] 混合模型(聚类+随机森林) 无监督聚类直接推导随机森林的决策规则,利用主动学习修正错误结果②③ 文献[113] 预测神经网络 采用基于多头注意力机制的LSTM③ 文献[78] 重构神经网络 集成学习② 文献[56] 重构神经网络 通过修正异常数据权重去除异常偏差③ 文献[92] 重构神经网络 引入额外的时间信息输入至VAE (CVAE)② 文献[79] 重构神经网络 集成学习,采用动态平衡损失函数②③④ 文献[93] 重构神经网络 通过切断异常标签到输入的因果路径去除异常偏差③ 文献[38] 混合模型(重构神经网络+聚类) 利用聚类实现检测模型由粗到精地微调②④ 文献[46] 对抗式重构
神经网络采用双层GAN+VAE,对目标函数进行显式地对抗正则化处理②③ 文献[106] 对抗式重构
神经网络采用WGAN+VAE,利用梯度惩罚以及贝叶斯正则项修改目标函数②③ 文献[89] 对抗式重构
神经网络采用基于对抗式训练思想的双层解码器AE②③④ 文献[97] 对抗式重构
神经网络采用基于对抗式训练思想的双层解码器AE,引入Transformer层②③④ 文献[104] 对抗式重构
神经网络采用双层GAN+AE②③④ 文献[123] 图注意力+重构神经网络 采用图结构挖掘深层次度量依赖② 文献[98] 基于关联差异的重构神经网络 采用基于关联差异思想的Transformer变体③④ 文献[96] 半监督重构
神经网络伪标签学习③ 文献[94] 半监督重构
神经网络利用主动学习修正错误结果及目标函数②③ 检测技术准确性提升方式可概括为4种:①人工提取高质量特征;②完善模型结构;③优化目标函数或改进训练方式;④调整异常计算方法或阈值选择机制. 表 8 常用缺失值填补方法
Table 8 Common Imputation Methods for Missing Values
表 9 KPI异常可解释性的贡献计算方法
Table 9 Contribution Computing Methods of KPI Anomaly Interpretation
代表性工作 贡献计算 InterFusion[40] 重构概率分量 S_t^i = \dfrac{1}{L}\displaystyle\sum\limits_{l = 1}^L {\left[ {\log {p_\theta }\left( {x_t^i|{\boldsymbol{z}}_1^{\left( l \right)},{\boldsymbol{z}}_2^{\left( l \right)}} \right)} \right]} OmniAnomaly[41] 重构概率分量 S_t^i = \log {p_\theta }\left( {x_t^i|{{\boldsymbol{z}}_{t - T:t}}} \right) DAEMON[46] 重构误差分量 S_t^i = {\left\| {x_t^i - x_t^{i'}} \right\|_1} 表 10 以多目标平衡为核心的KPI异常检测技术
Table 10 Multi-Objective Balancing-Centric KPI Anomaly Detection Techniques
代表性
工作主要应用目标 性能优化方式 文献[37] 鲁棒性 SR模型清洗异常① 文献[72] 鲁棒性 去除KPI中的趋势成分② 文献[91] 鲁棒性 在滑动窗口中采用一小段检测延迟② 文献[117] 鲁棒性 采用逆最近邻区分预期“概念漂移”与异常② 文献[114] 鲁棒性 采用双重差分模型判断“概念漂移”正确分类② 文献[30] 鲁棒性、
实时性缺失值填补,并行计算,连续检测到5个异常点触发告警①③⑤ 文献[56] 鲁棒性、
实时性缺失值填补,提出一种可接受延迟内的性能计算调整方法降低漏报率①④ 文献[73] 鲁棒性、
实时性缺失值填补,提取差异特征代替基于原始特征的
学习,调整子采样技术以降低时间复杂度,仅提
取一阶、二阶差分特征以减少不必要的时间和内
存消耗①②③文献[103] 实时性 提出一种同时衡量检测延迟和精确率的新指标③ 文献[49] 实时性 采用基于KD-Trees的核密度估计降低时间复杂度③ 文献[82] 实时性 调整KPI窗口大小(控制样本长度)以降低时间复杂度③ 文献[111] 实时性 并行编码,利用 Chebyshev多项式降低时间复
杂度③文献[76] 实时性 将异常检测任务部署在边缘设备以减少通信量③ 文献[80] 实时性 利用贝叶斯网络捕获预测的不确定性估计以减少
误报⑤文献[40] 鲁棒性、
可解释性缺失值填补,采用基于特征重要性的局部解释
方法①⑦文献[46] 鲁棒性、
可解释性SR模型清洗异常,采用基于特征重要性的局部解释方法①⑦ 文献[41] 可解释性 采用基于特征重要性的局部解释方法⑦ 文献[69] 可解释性 采用基于孤立森林的“白盒”模型(实现内在可解释
性)⑥检测技术性能优化方式可细分为7种:①数据清洗;②快速适应“概念漂移”;③提高检测效率;④降低漏报率;⑤减小告警频率;⑥“白盒”检测模型;⑦事后解释方法. -
[1] Han Yanbo, Zhao Zhuofeng. Aggregating, operating, sharing and utilizing Internet-based services with the VINCA approach[C]//Proc of the 12th Asia-Pacific Web Conf. Piscataway, NJ: IEEE, 2010: 398−398
[2] Ono E, Ikkatai Y. Internet-based services to obtain information on science and technology according to the degree of interest[C]//Proc of the 9th Int Congress on Advanced Applied Informatics (IIAI-AAI). Piscataway, NJ: IEEE, 2020: 328−331
[3] 吴建平,林嵩,徐恪,等. 可演进的新一代互联网体系结构研究进展[J]. 计算机学报,2012,35(6):1094−1108 doi: 10.3724/SP.J.1016.2012.01094 Wu Jianping, Lin Song, Xu Ke, et al. Advances in evolvable new generation Internet architecture[J]. Chinese Journal of Computers, 2012, 35(6): 1094−1108 (in Chinese) doi: 10.3724/SP.J.1016.2012.01094
[4] 徐恪,朱敏,林闯. 互联网体系结构评估模型、机制及方法研究综述[J]. 计算机学报,2012,35(10):1985−2006 doi: 10.3724/SP.J.1016.2012.01985 Xu Ke, Zhu Min, Lin Chuang. Internet architecture evaluation models, mechanisms and methods[J]. Chinese Journal of Computers, 2012, 35(10): 1985−2006 (in Chinese) doi: 10.3724/SP.J.1016.2012.01985
[5] Gartner. The cost of downtime[EB/OL]. (2014-07-16)[2023-03-30]. https://www.loadbalancer.org/blog/how-to-calculate-the-cost-of-downtime-to-your-organization
[6] Liu Dapeng, Zhao Youjian, Xu Haowen, et al. Opprentice: Towards practical and automatic anomaly detection through machine learning[C]//Proc of the 2015 ACM/SIGCOMM Conf on Internet Measurement Conf. New York: ACM, 2015: 211−224
[7] Mekuria R, McGrath M J, Riccobene V, et al. Automated profiling of virtualized media processing functions using telemetry and machine learning[C]//Proc of the 9th ACM Multimedia Systems Conf. New York: ACM, 2018: 150−161
[8] 裴丹,张圣林,裴昶华. 基于机器学习的智能运维[J]. 中国计算机学会通讯,2017,13(12):67−73 Pei Dan, Zhang Shenglin, Pei Changhua. AIOps based on machine learning[J]. Communications of the CCF, 2017, 13(12): 67−73 (in Chinese)
[9] Gartner. AIOps (Artificial Intelligence for IT Operations)[EB/OL]. [2024-12-13]. https://www.gartner.com/en/information-technology/glossary/aiops-artificial-intelligence-operations
[10] Ho T K. Random decision forests[C]//Proc of the 3rd Int Conf on Document Analysis and Recognition. Piscataway, NJ: IEEE, 1995: 278−282
[11] Breiman L. Bagging predictors[J]. Machine Learning, 1996, 24(2): 123−140
[12] Ester M, Kriegel H P, Sander J, et al. A density-based algorithm for discovering clusters in large spatial databases with noise[C]//Proc of the 2nd Int Conf on Knowledge Discovery and Data Mining. Palo Alto, CA: AAAI, 1996: 226−231
[13] Kriegel H P, Kröger P, Sander J, et al. Density‐based clustering[J]. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2011, 1(3): 231−240 doi: 10.1002/widm.30
[14] LeCun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278−2324 doi: 10.1109/5.726791
[15] Elman J L. Finding structure in time[J]. Cognitive Science, 1990, 14(2): 179−211 doi: 10.1207/s15516709cog1402_1
[16] Le Q V, Jaitly N, Hinton G E. A simple way to initialize recurrent networks of rectified linear units[J]. arXiv preprint, arXiv:1504.00941, 2015
[17] Hochreiter S, Schmidhuber J. Long short-term memory[J]. Neural Computation, 1997, 9(8): 1735−1780 doi: 10.1162/neco.1997.9.8.1735
[18] Chung Junyoung, Gulcehre C, Cho K H, et al. Empirical evaluation of gated recurrent neural networks on sequence modeling[J]. arXiv preprint, arXiv:1412.3555, 2014
[19] Rumelhart D E, Hinton G E, Williams R J. Learning representations by back-propagating errors[J]. Nature, 1986, 323(6088): 533−536 doi: 10.1038/323533a0
[20] Kingma D P, Welling M. Auto-encoding variational bayes[J]. arXiv preprint, arXiv:1312.6114, 2014
[21] Goodfellow I J, Pouget-Abadie J, Mirza M, et al. Generative adversarial networks[J]. arXiv preprint, arXiv:1406.2661, 2014
[22] Mnih V, Heess N, Graves A. Recurrent models of visual attention[C]//Proc of the 28th Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT, 2014: 2204−2212
[23] Bahdanau D, Cho K, Bengio Y. Neural machine translation by jointly learning to align and translate[J]. arXiv preprint, arXiv:1409.0473, 2015
[24] Parikh A P, Täckström O, Das D, et al. A decomposable attention model for natural language inference[C]//Proc of the 2016 Conf on Empirical Methods in Natural Language. Stroudsburg, PA: ACL, 2016: 2249−2255
[25] Cheng Jianpeng, Dong Li, Lapata M. Long short-term memory-networks for machine reading[C]//Proc of the 2016 Conf on Empirical Methods in Natural Language. Stroudsburg, PA: ACL, 2016: 551−561
[26] Lin Zhouhan, Feng Minwei, Santos C N, et al. A structured self-attentive sentence embedding[C/OL]//Proc of the 5th Int Conf on Learning Representations (Poster). New York: OpenReview. net, 2017[2024-01-24]. https://openreview.net/forum?id=BJC_jUqxe
[27] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Proc of the 31st Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT, 2017: 5998−6008
[28] Zhou Haoyi, Zhang Shanghang, Peng Jieqi, et al. Informer: Beyond efficient transformer for long sequence time-series forecasting[C]//Proc of the 35th AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI, 2021: 11106−11115
[29] Veličković P, Cucurull G, Casanova A, et al. Graph attention networks[J]. arXiv preprint, arXiv:1710.10903, 2017
[30] Qian Ji, Zeng Guangfu, Cai Zhiping, et al. A survey on anomaly detection techniques in large-scale KPI data[C]//Proc of the 9th Int Conf on Computer Engineering and Networks. Berlin: Springer, 2021: 767−776
[31] He Shiming, Yang Bo, Qiao Qi. Overview of key performance indicator anomaly detection[C/OL]//Proc of the 2021 IEEE Region 10 Symp (TENSYMP). Piscataway, NJ: IEEE, 2021[2024-03-09]. https://ieeexplore.ieee.org/abstract/document/9550989
[32] 王速,卢华,汪硕,等. 智能运维中 KPI 异常检测的研究进展[J]. 电信科学,2021,37(5):42−51 Wang Su, Lu Hua, Wang Shuo, et al. Research progress of KPI anomaly detection in intelligent operation and maintenance[J]. Telecommunications Science, 2021, 37(5): 42−51 (in Chinese)
[33] Chen E Y, Tsay R S, Chen Rong. Constrained factor models for high-dimensional matrix-variate time series[J]. arXiv preprint, arXiv:1710.06075, 2017
[34] Wu Husheng. A survey of research on anomaly detection for time series[C]//Proc of the 13th Int Computer Conf on Wavelet Active Media Technology and Information Processing (ICCWAMTIP). Piscataway, NJ: IEEE, 2016: 426−431
[35] Zhao Nengwen, Zhu Jing, Liu Rong, et al. Label-less: A semi-automatic labelling tool for KPI anomalies[C]//Proc of the 38th IEEE Conf on Computer Communications (INFOCOM). Piscataway, NJ: IEEE, 2019: 1882−1890
[36] Laptev N, Amizadeh S, Flint I. Generic and scalable framework for automated time-series anomaly detection[C]//Proc of the 21st ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2015: 1939−1947
[37] Ren Hansheng, Xu Bixiong, Wang Yujing, et al. Time-series anomaly detection service at Microsoft[C]//Proc of the 25th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2019: 3009−3017
[38] Sun Ming, Su Ya, Zhang Shenglin, et al. CTF: Anomaly detection in high-dimensional time series with coarse-to-fine model transfer[C/OL]//Proc of the 40th IEEE Conf on Computer Communications (INFOCOM). Piscataway, NJ: IEEE, 2021[2024-03-09]. https://ieeexplore.ieee.org/document/9488755
[39] Gama J, Zliobaite I, Bifet I, et al. A survey on concept drift adaptation[J]. Computing Surveys, 2014, 46(4): 1−37
[40] Li Zhihan, Zhao Youjian, Han Jiaqi, et al. Multivariate time series anomaly detection and interpretation using hierarchical inter-metric and temporal embedding[C]//Proc of the 27th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2021: 3220−3230
[41] Su Ya, Zhao Youjian, Niu Chenhao, et al. Robust anomaly detection for multivariate time series through stochastic recurrent neural network[C]//Proc of the 25th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2019: 2828−2837
[42] 2018AIOps. The AIOps dataset [EB/OL]. [2023-03-30]. https://github.com/NetManAIOps/KPI-Anomaly-Detection?tab=readme-ov-file
[43] Lavin A, Ahmad S. Evaluating real-time anomaly detection algorithms – The Numenta anomaly benchmark[C]//Proc of the 14th IEEE Int Conf on Machine Learning and Applications (ICMLA). Piscataway, NJ: IEEE, 2015: 38−44
[44] Chandola V, Banerjee A, Kumar V. Anomaly detection: A survey[J]. ACM Computing Surveys, 2009, 41(3): 1−58
[45] Chen Xu, Qiu Qiu, Li Changshan, et al. GraphAD: A graph neural network for entity-wise multivariate time-series anomaly detection[C]//Proc of the 45th Int ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2022: 2297−2302
[46] Chen Xuanhao, Deng Liwei, Huang Feiteng, et al. DAEMON: Unsupervised anomaly detection and interpretation for multivariate time series[C]//Proc of the 37th IEEE Int Conf on Data Engineering. Piscataway, NJ: IEEE, 2021: 2225−2230
[47] Zheng Wujie, Lu Haochuan, Zhou Yangfan, et al. iFeedback: Exploiting user feedback for real-time issue detection in large-scale online service systems[C]//Proc of the 34th IEEE∕ACM Int Conf on Automated Software Engineering (ASE). Piscataway, NJ: IEEE, 2019: 352−363
[48] Zhang Shuo, Chen Xiaofei, Chen Jiayuan, et al. Anomaly detection of periodic multivariate time series under high acquisition frequency scene in IoT[C]//Proc of the 20th Int Conf on Data Mining Workshops. Piscataway, NJ: IEEE, 2020: 543−552
[49] Ibidunmoye O, Rezaie A R, Elmroth E. Adaptive anomaly detection in performance metric streams[J]. IEEE Transactions on Network and Service Management, 2017, 15(1): 217−231
[50] Hundman K, Constantinou V, Laporte C, et al. Detecting spacecraft anomalies using LSTMs and nonparametric dynamic thresholding[C]//Proc of the 24th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2018: 387−395
[51] Goh J, Adepu S, Junejo K N, et al. A dataset to support research in the design of secure water treatment systems[C]//Proc of the 11th Int Conf on Critical Information Infrastructures Security. Berlin: Springer, 2016: 88−99
[52] Ahmed C M, Palleti V R, Mathur A P. WADI: A water distribution testbed for research in the design of secure cyber physical systems[C]//Proc of the 3rd Int Workshop on Cyber-physical Systems for Smart Water Networks. New York: ACM, 2017: 25−28
[53] Dau H A, Bagnall A, Kamgar K, et al. The UCR time series archive[J]. IEEE/CAA Journal of Automatica Sinica, 2019, 6(6): 1293−1305 doi: 10.1109/JAS.2019.1911747
[54] Stehman S V. Selecting and interpreting measures of thematic classification accuracy[J]. Remote Sensing of Environment, 1997, 62(1): 77−89 doi: 10.1016/S0034-4257(97)00083-7
[55] Faraggi D, Reiser B. Estimation of the area under the ROC curve[J]. Statistics in Medicine, 2002, 21(20): 3093−3106 doi: 10.1002/sim.1228
[56] Xu Haowen, Chen Wenxiao, Zhao Nengwen, et al. Unsupervised anomaly detection via variational auto-encoder for seasonal KPIs in web applications[C]//Proc of the 27th Web Conf. New York: ACM, 2018: 187−196
[57] 纪守领,杜天宇,邓水光,等. 深度学习模型鲁棒性研究综述[J]. 计算机学报,2022,45(1):190−206 Ji Shouling, Du Tianyu, Deng Shuiguang, et al. Robustness certification research on deep learning models: A survey[J]. Chinese Journal of Computers, 2022, 45((1): ): 190−206 (in Chinese)
[58] Dai Liang, Lin Tao, Liu Chang, et al. SDFVAE: Static and dynamic factorized VAE for anomaly detection of multivariate CDN KPIs[C]//Proc of the 30th Web Conf. New York: ACM, 2021: 3076−3086
[59] Zolfaghari B, Srivastava G, Roy S, et al. Content delivery networks: State of the art, trends, and future roadmap[J]. ACM Computing Surveys, 2020, 53(2): 1−34
[60] Ghaznavi M, Jalalpour E, Salahuddin M A, et al. Content delivery network security: A survey[J]. IEEE Communications Surveys & Tutorials, 2021, 23(4): 2166−2190
[61] 吴吉义,李文娟,黄剑平,等. 移动互联网研究综述[J]. 中国科学:信息科学,2015,45(1):45−69 doi: 10.1360/N112014-00277 Wu Jiyi, Li Wenjuan, Huang Jianping, et al. Key techniques for mobile Internet: A survey[J]. SCIENTIA SINICA Informationis, 2015, 45(1): 45−69 (in Chinese) doi: 10.1360/N112014-00277
[62] Hsieh M Y. SoLoMo technology: Exploring the most critical determinants of SoLoMo technology in the contemporary mobile communication technology era[J]. Journal of Ambient Intelligence and Humanized Computing, 2018, 9(2): 307−318 doi: 10.1007/s12652-016-0375-2
[63] 李晖,李凤华,曹进,等. 移动互联服务与隐私保护的研究进展[J]. 通信学报,2014,35(11):1−11 Li Hui, Li Fenghua, Cao Jin, et al. Survey on security and privacy preserving for mobile Internet service[J]. Journal on Communications, 2014, 35(11): 1−11 (in Chinese)
[64] 王久超,赵卓峰. 基于实体-数据的物联网服务建模[J]. 计算机系统应用,2023,32(6):70−79 Wang Jiuchao, Zhao Zhuofeng. Entity-data-based modeling for Internet of things services[J]. Computer System & Applications, 2023, 32(6): 70−79 (in Chinese)
[65] 孙海丽,龙翔,韩兰胜,等. 工业物联网异常检测技术综述[J]. 通信学报,2022,43(3):196−210 doi: 10.11959/j.issn.1000-436x.2022032 Sun Haili, Long Xiang, Han Lansheng, et al. Overview of anomaly detection techniques for industrial Internet of things[J]. Journal on Communications, 2022, 43(3): 196−210 (in Chinese) doi: 10.11959/j.issn.1000-436x.2022032
[66] Zhang Shenglin, Zhao Chenyu, Sui Yicheng, et al. Robust KPI anomaly detection for large-scale software services with partial labels[C]//Proc of the 32nd IEEE Int Symp on Software Reliability Engineering (ISSRE). Piscataway, NJ: IEEE, 2021: 103−114
[67] Zhang Xu, Lin Qingwei, Xu Yong, et al. Cross-dataset time series anomaly detection for cloud systems[C]//Proc of the 2019 USENIX Annual Technical Conf. Berkeley, CA: USENIX Association, 2019: 1063−1076
[68] Wang Jingyu, Jing Yuhan, Qi Qi, et al. ALSR: An adaptive label screening and relearning approach for interval-oriented anomaly detection[J]. Expert Systems with Applications, 2019, 136: 94−104 doi: 10.1016/j.eswa.2019.06.028
[69] Wang Yao, Wang Zhaowei, Xie Zejun, et al. Practical and white-box anomaly detection through unsupervised and active learning[C/OL]//Proc of the 29th Int Conf on Computer Communications and Networks (ICCCN). Piscataway, NJ: IEEE, 2020[2024-03-09]. https://ieeexplore.ieee.org/document/9209704
[70] Moysen J, Ahmed F, García-Lozano M, et al. Big data-driven automated anomaly detection and performance forecasting in mobile networks[C/OL]//Proc of the 2020 IEEE Global Communications Conf Workshops. Piscataway, NJ: IEEE, 2020[2024-03-09]. https://ieeexplore.ieee.org/document/9367579
[71] Bu Jiahao, Liu Ying, Zhang Shenglin, et al. Rapid deployment of anomaly detection models for large number of emerging KPI streams[C/OL]//Proc of the 37th IEEE Int Performance, Computing, and Communications Conf. Piscataway, NJ: IEEE, 2018[2024-03-09]. https://ieeexplore.ieee.org/document/8711315
[72] Wu Jun, Lee P P C, Li Qi, et al. CellPAD: Detecting performance anomalies in cellular networks via regression analysis[C/OL]//Proc of the 17th IFIP Networking Conf. Piscataway, NJ: IEEE, 2018[2024-03-09]. https://ieeexplore.ieee.org/document/8697027
[73] Yu Guang, Cai Zhiping, Wang Siqi, et al. Unsupervised online anomaly detection with parameter adaptation for KPI abrupt changes[J]. IEEE Transactions on Network and Service Management, 2019, 17(3): 1294−1308
[74] Chen Haiwen, Yu Guang, Liu Fang, et al. Unsupervised anomaly detection via DBSCAN for KPIs jitters in network managements[J]. Computers, Materials & Continua, 2020, 62(2): 917−927
[75] Wang Zhichao, Singh S, Pereira A. Large scale time series analysis for infrastructure reliability[C]//Proc of the 7th IEEE Int Conf on Big Data. Piscataway, NJ: IEEE, 2019: 6240−6242
[76] Teh H Y, Kevin I, Wang K, et al. Expect the unexpected: Unsupervised feature selection for automated sensor anomaly detection[J]. IEEE Sensors Journal, 2021, 21(16): 18033−18046 doi: 10.1109/JSEN.2021.3084970
[77] Zhao Nengwen, Zhu Jing, Wang Yao, et al. Automatic and generic periodicity adaptation for KPI anomaly detection[J]. IEEE Transactions on Network and Service Management, 2019, 16(3): 1170−1183 doi: 10.1109/TNSM.2019.2919327
[78] Zhao Na, Han Biao, Cai Yang, et al. SeqAD: An unsupervised and sequential autoencoder ensembles based anomaly detection framework for KPI[C/OL]//Proc of the 29th IEEE∕ACM Int Symp on Quality of Service (IWQoS). Piscataway, NJ: IEEE, 2021[2024-03-09]. https://ieeexplore.ieee.org/document/9521258
[79] Zhao Na, Han Biao, Li Ruidong, et al. A multivariate KPIs anomaly detection framework with dynamic balancing loss training[J]. IEEE Transactions on Network and Service Management, 2023, 20(2): 1418−1429 doi: 10.1109/TNSM.2022.3224803
[80] Zhu Lingxue, Laptev N. Deep and confident prediction for time series at uber[C]//Proc of the 17th Int Conf on Data Mining Workshops. Piscataway, NJ: IEEE, 2017: 103−110
[81] Lee Mingchang, Lin Jiachun, Gan E G. ReRe: A lightweight real-time ready-to-go anomaly detection approach for time series[C]//Proc of the 44th IEEE Annual Computers, Software, and Applications Conf (COMPSAC). Piscataway, NJ: IEEE, 2020: 322−327
[82] Yao Yueyue, Ma Jianghong, Ye Yunming. KfreqGAN: Unsupervised detection of sequence anomaly with adversarial learning and frequency domain information[J]. Knowledge-Based Systems, 2022, 236: 107757 doi: 10.1016/j.knosys.2021.107757
[83] Shang Zijing, Zhang Yingjun, Zhang Xiuguo, et al. Time series anomaly detection for KPIs based on correlation analysis and HMM[J]. Applied Sciences, 2021, 11(23): 11353 doi: 10.3390/app112311353
[84] Ahmad S, Lavin A, Purdy S, et al. Unsupervised real-time anomaly detection for streaming data[J]. Neurocomputing, 2017, 262: 134−147 doi: 10.1016/j.neucom.2017.04.070
[85] Lea C, Vidal R, Reiter A, et al. Temporal convolutional networks: A unified approach to action segmentation[C]//Proc of the 14th European Conf on Computer Vision Workshops. Berlin: Springer, 2016: 47−54
[86] Li Zhihan, Zhao Youjian, Liu Rong, et al. Robust and rapid clustering of KPIs for large-scale anomaly detection[C/OL]//Proc of the 26th IEEE∕ACM Int Symp on Quality of Service (IWQoS). Piscataway, NJ: IEEE, 2018[2024-03-09]. https://ieeexplore.ieee.org/document/8624168
[87] Zhang Shenglin, Zhong Zhenyu, Li Dongwen, et al. Efficient KPI anomaly detection through transfer learning for large-scale web services[J]. IEEE Journal on Selected Areas in Communications, 2022, 40(8): 2440−2455 doi: 10.1109/JSAC.2022.3180785
[88] Huo Wunjun, Wang Wei, Li Wen. AnomalyDetect: An online distance-based anomaly detection algorithm[C]//Proc of the 16th IEEE Int Conf on Web Services. Piscataway, NJ: IEEE, 2019: 63−79
[89] Audibert J, Michiardi P, Guyard F, et al. USAD: Unsupervised anomaly detection on multivariate time series[C]//Proc of the 25th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2020: 3395−3404
[90] Abdulaal A, Lancewicki T. Real-time synchronization in neural networks for multivariate time series anomaly detection[C]//Proc of 2021 the IEEE Int Conf on Acoustics, Speech and Signal Processing (ICASSP). Piscataway, NJ: IEEE, 2021: 3570−3574
[91] Jensen L, Fosa J, Teitelbaum B, et al. How dense autoencoders can still achieve the state-of-the-art in time-series anomaly detection[C]//Proc of the 20th IEEE Int Conf on Machine Learning and Applications (ICMLA). Piscataway, NJ: IEEE, 2021: 1272−1277
[92] Li Zeyan, Chen Wenxiao, Pei Dan. Robust and unsupervised KPI anomaly detection based on conditional variational autoencoder[C/OL]//Proc of the 37th IEEE Int Performance, Computing, and Communications Conf. Piscataway, NJ: IEEE, 2018[2024-03-09]. https://ieeexplore.ieee.org/document/8710885
[93] Ji Jiemin, Guan Donghai, Deng Yuwen, et al. Model-agnostic causal principle for unbiased KPI anomaly detection[C/OL]//Proc of the 2022 Int Joint Conf on Neural Networks (IJCNN). Piscataway, NJ: IEEE, 2022[2024-03-09]. https://ieeexplore.ieee.org/document/9892664
[94] Wang Wenlu, Chen Pengfei, Xu Yibin, et al. Active-MTSAD: Multivariate time series anomaly detection with active learning[C]//Proc of the 52nd Annual IEEE/IFIP Int Conf on Dependable Systems and Networks (DSN). Piscataway, NJ: IEEE, 2022: 263−274
[95] Wu Bo, Xu Qian, Yao Zhenjie, et al. VAE-TCN hybrid model for KPI anomaly detection[C/OL]//Proc of the 23rd Asia-Pacific Network Operations and Management Symp (APNOMS). Piscataway, NJ: IEEE, 2022[2024-03-09]. https://ieeexplore.ieee.org/document/9919985
[96] Chen Ningjiang, Tu Huan, Duan Xiaoyan, et al. Semisupervised anomaly detection of multivariate time series based on a variational autoencoder[J]. Applied Intelligence, 2023, 53(5): 6074−6098
[97] Tuli S, Casale G, Jennings N R. TranAD: Deep transformer networks for anomaly detection in multivariate time series data[J]. Proceedings of the VLDB Endowment, 2022, 15(6): 1201−1214 doi: 10.14778/3514061.3514067
[98] Xu Jiehui, Wu Haixu, Wang Jianmin, et al. Anomaly transformer: Time series anomaly detection with association discrepancy[C/OL]//Proc of the 10th Int Conf on Learning Representations. New York: OpenReview. net, 2022[2024-01-24]. https://openreview.net/forum?id=LzQQ89U1qm_
[99] Zhong Jie, Zuo Enguang, Chen Chen, et al. A masked attention network with query sparsity measurement for time series anomaly detection[C]//Proc of the 30th IEEE Int Conf on Multimedia and Expo (ICME). Piscataway, NJ: IEEE, 2023: 2741−2746
[100] Qin Shuxin, Zhu Jing, Wang Dan, et al. Decomposed transformer with frequency attention for multivariate time series anomaly detection[C]//Proc of the 10th IEEE Int Conf on Big Data. Piscataway, NJ: IEEE, 2022: 1090−1098
[101] Zhang Yu, Wang Tianbo. Applying value-based deep reinforcement learning on KPI time series anomaly detection[C]//Proc of the 15th IEEE Int Conf on Cloud Computing (CLOUD). Piscataway, NJ: IEEE, 2022: 197−202
[102] Shu Yanjun, Gao Tianrun, Zhang Zhan, et al. A general KPI anomaly detection using attention models[C]//Proc of the 19th IEEE Int Conf on Services Computing (SCC). Piscataway, NJ: IEEE, 2022: 114−119
[103] Doshi K, Abudalou S, Yilmaz Y. Reward once, penalize once: Rectifying time series anomaly detection[C/OL]//Proc of the 2022 Int Joint Conf on Neural Networks (IJCNN). Piscataway, NJ: IEEE, 2022[2024-03-09]. https://ieeexplore.ieee.org/document/9891913
[104] Geiger A, Liu Dongyu, Alnegheimish S, et al. TadGAN: Time series anomaly detection using generative adversarial networks[C]//Proc of the 8th IEEE Int Conf on Big Data. Piscataway, NJ: IEEE, 2020: 33−43
[105] Zhao Jiachen, Li Yongling, He Haibo, et al. One-step predictive encoder-gaussian segment model for time series anomaly detection[C/OL]//Proc of the 2020 Int Joint Conf on Neural Networks (IJCNN). Piscataway, NJ: IEEE, 2020[2024-03-09]. https://ieeexplore.ieee.org/document/9207569
[106] Chen Wenxiao, Xu Haowen, Li Zwyan, et al. Unsupervised anomaly detection for intricate KPIs via adversarial training of VAE[C]//Proc of the 38th IEEE Conf on Computer Communications (INFOCOM). Piscataway, NJ: IEEE, 2019: 1891−1899
[107] Zhao Yun, Zhang Xiuguo, Shang Zijing, et al. A novel hybrid method for KPI anomaly detection based on VAE and SVDD[J/OL]. Symmetry, 2021, 13(11): 2104
[108] He Zilong, Chen Pengfei, Huang Tao. Share or not share? Towards the practicability of deep models for unsupervised anomaly detection in modern online systems[C]//Proc of the 33rd IEEE Int Symp on Software Reliability Engineering (ISSRE). Piscataway, NJ: IEEE, 2022: 25−35
[109] Graves A, Schmidhuber J. Framewise phoneme classification with bidirectional LSTM and other neural network architectures[J]. Neural Networks, 2005, 18(5/6): 602−610
[110] Dai Liang, Chen Wenchao, Liu Yanwei, et al. Switching Gaussian mixture variational RNN for anomaly detection of diverse CDN websites[C]//Proc of the 41st IEEE Conf on Computer Communications (INFOCOM). Piscataway, NJ: IEEE, 2022: 300−309
[111] Qi Qi, Shen Runye, Wang Jingyu, et al. Spatial-temporal learning-based artificial intelligence for IT operations in the edge network[J]. IEEE Network, 2021, 35(1): 197−203 doi: 10.1109/MNET.011.2000278
[112] Scheinert D, Acker A. TELESTO: A graph neural network model for anomaly classification in cloud services[C]//Proc of the 2020 Int Conf on Service-Oriented Computing Workshops. Berlin: Springer, 2020: 214−227
[113] Ji Suozhao, Wu Wenjun, Pu Yanjun. Multi-indicators prediction in microservice using Granger causality test and Attention LSTM[C]//Proc of the 2020 IEEE World Congress on Services (SERVICES). Piscataway, NJ: IEEE, 2020: 77−82
[114] Ma Minghua, Zhang Shenglin, Pei Dan, et al. Robust and rapid adaption for concept drift in software system anomaly detection[C]//Proc of the 29th IEEE Int Symp on Software Reliability Engineering (ISSRE). Piscataway, NJ: IEEE, 2018: 13−24
[115] Wang Jingwen, Liu Jingxin, Pu Juntao, et al. An anomaly prediction framework for financial IT systems using hybrid machine learning methods[J]. Journal of Ambient Intelligence and Humanized Computing, 2023, 14(11): 15277−15286 doi: 10.1007/s12652-019-01645-z
[116] Zhang Shupeng, Fung C, Huang Shaohan, et al. PSOM: Periodic self-organizing maps for unsupervised anomaly detection in periodic time series[C/OL]//Proc of the 25th IEEE∕ACM Int Symp on Quality of Service (IWQoS). Piscataway, NJ: IEEE, 2017[2024-03-09]. https://ieeexplore.ieee.org/document/7969174
[117] Le K H, Papotti P. User-driven error detection for time series with events[C]//Proc of the 36th IEEE Int Conf on Data Engineering. Piscataway, NJ: IEEE, 2020: 745−757
[118] Loog M. Contrastive pessimistic likelihood estimation for semi-supervised classification[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 38(3): 462−475
[119] Sohn K, Lee H, Yan Xinchen. Learning structured output representation using deep conditional generative models[C]//Proc of the 29th Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT, 2015: 3483−3491
[120] Chen Xuanhao, Deng Liwei, Zhao Yan, et al. Adversarial autoencoder for unsupervised time series anomaly detection and interpretation[C]//Proc of the 16th ACM Int Conf on Web Search and Data Mining. New York: ACM, 2023: 267−275
[121] Arjovsky M, Chintala S, Bottou L. Wasserstein generative adversarial networks[C]//Proc of the 34th Int Conf on Machine Learning. New York: ACM, 2017: 214−223
[122] Gulrajani I, Ahmed F, Arjovsky M, et al. Improved training of Wasserstein GANs[C]//Proc of the 31st Int Conf on Neural Information Processing Systems. Cambridge, MA: MIT, 2017: 5767−5777
[123] Zhu Haiqi, Rho S, Liu Shaohui, et al. Learning spatial graph structure for multivariate KPI anomaly detection in large-scale cyber-physical systems[J]. IEEE Transactions on Instrumentation and Measurement, 2023, 72: 1−16
[124] Siffer A, Fouque P A, Termier A, et al. Anomaly detection in streams with extreme value theory[C]//Proc of the 23rd ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2017: 1067−1075
[125] García S, Luengo J, Herrera F. Data Preprocessing in Data Mining[M]. Cham, Switzerland: Springer International Publishing, 2015
[126] 成科扬,王宁,师文喜,等. 深度学习可解释性研究进展[J]. 计算机研究与发展,2020,57(6):1208−1217 doi: 10.7544/issn1000-1239.2020.20190485 Cheng Keyang, Wang Ning, Shi Wenxi, et al. Research advances in the interpretability of deep learning[J]. Journal of Computer Research and Development, 2020, 57(6): 1208−1217 (in Chinese) doi: 10.7544/issn1000-1239.2020.20190485
-
期刊类型引用(1)
1. 郝嘉琨,向鹏,何逸飞,高健博,关志,谢安明,陈钟. 基于去中心化身份的跨域数据交易系统. 计算机研究与发展. 2024(10): 2570-2586 . 本站查看
其他类型引用(2)