-
随着无线通信技术和无线传感器网络的发展及普及,无处不在的通信和随处可得的数据使得物联网应用逐步走入现实世界。作为物联网应用技术重要的组成部分之一,发布订阅系统因其具有用户交互去耦性和支持异步通信的特点,被广泛应用于各种大型关键系统中以提高系统可用性、可靠性和运行效率[1]。例如,发布订阅系统已经用于航空交通管制、卫生保健应用和大型工业制造等[2]。但是,复杂的应用环境也对发布订阅系统提出了更多、更高的安全要求。例如,攻击者可能会隐藏在数量众多、形式多样的合法用户中,伺机进行非法访问;用户产生的海量数据中往往含有大量隐私信息,在提供维持正常系统运行所需信息的同时还需保护隐私信息不被泄露。随着发布订阅系统应用的推广,如何解决上述安全威胁也逐渐成为了学界研究的热点[2-3]。
访问控制技术可以很好地解决上述问题。通过限制非授权用户对系统数据、服务的访问能力和范围,集合了多个系统组件和方法的访问控制技术可以实现对发布订阅系统服务及其用户数据机密性、完整性和可用性的保护[3]。但传统访问控制技术在面对发布订阅系统应用所需的访问控制细粒度和可扩展性需求时,并不能简单的直接使用[4]。因此,更为适应发布订阅系统应用场景和物联网应用特点的访问控制方案成为急待解决的研究方向[2-3]。
基于属性的访问控制方案已经被证明可以提供细粒度的访问控制[5],为了解决多策略和多规则应用环境中的访问控制问题,基于风险的访问控制结构被提出[6]。同时,针对特定应用场景和目标的各种轻量级访问控制方案也越来越受到研究人员的重视[7-9]。
通过将访问控制技术运用到发布订阅系统中,可以实现用户认证和系统安全[10-11]。文献[12]设计并实现了针对发布订阅系统的访问控制解决方案。文献[13]提出了针对基于信息中心网络架构的发布订阅系统强制访问控制方法。文献[14]针对基于智能电网的发布订阅系统提出了安全访问控制机制。
近年的研究结果表明,随着应用环境和应用特点的增长,特别是物联网技术的发展和普及,访问控制方案需要针对特定应用环境和特点巧妙设计实现。因此,设计出一种符合发布订阅系统应用场景和特点的高效可行的访问控制方案,一直是学界的热点问题[10]。
本文聚焦于解决上述针对发布订阅系统的安全威胁,在保证系统功能高效运行的同时,设计了一种全新的基于全同态加密算法的访问控制机制,命名为ACHO。ACHO通过基于属性的访问控制机制实现了对用户细粒度的访问控制,由同态加密算法加密的事件数据实现了敏感数据的隐私保护。同时,ACHO还实现了系统的可扩展性和高效的发布订阅服务。安全分析证明ACHO可以保证系统的安全性和正确性。实验结果也表明ACHO在维持安全机制必需开销的前提下,也能实现高效的发布订阅服务。
本文主要贡献总结如下:
1) 提出了一种面向发布订阅系统全新的基于全同态加密算法的访问控制机制ACHO。它可以实现对系统用户的访问控制,同时对系统数据提供隐私保护。
2) 全面详细地分析了ACHO机制,并对其安全性和正确性进行了理论证明。分析和证明结果表明ACHO能安全和正确地保证系统正常的发布订阅服务,并实现对用户的访问控制。
3) 为了验证所提ACHO机制的可行性,本文对ACHO实施了仿真实验。一系列实验结果表明,ACHO在实现安全访问控制的目标前提下,依然能维持较为高效的发布订阅服务。
-
全同态加密算法是指支持任意运算规则的同态加密算法。本文中系统事件均被全同态加密算法加密。
-
令$q$为素数,${Z_q}$为模$q$的整数域,$n$为整数。对于给定的明文$v \in {Z_q}$和由参数$q$、$n$生成的秘密钥$K$,则有加密函数${\rm{Encrypt(}}K,v{\rm{)}} = ({c_1},{c_2}, \cdots ,{c_n})$和解密函数${\rm{Decrypt}}(K,({c_1},{c_2}, \cdots ,{c_n})) = v$。其中密文$({c_1},{c_2}, \cdots ,{c_n})$为$n$维向量,${c_i} \in {Z_q}$。由秘密钥$K$生成的公开密钥$PK$能被用来对$v$加密,则有[15]:
$${\rm{Encrypt}}(PK,v) = ({c_1},{c_2}, \cdots ,{c_n})$$ $${\rm{Decrypt(}}K,({c_1},{c_2}, \cdots {c_n}){\rm{)}} = v$$ 令$\mathit{\boldsymbol{C}} = ({c_1},{c_2}, \cdots ,{c_n})$和$\mathit{\boldsymbol{C}}' = ({c'_1},{c'_2}, \cdots ,{c'_n})$。当解密函数存在${\rm{Decrypt}}(K,\mathit{\boldsymbol{C}}) = v$并且${\rm{Decrypt(}}K,\mathit{\boldsymbol{C}}'{\rm{)}} = v'$时,全同态加密算法满足以下附加的同态性质[15]:
$${\rm{Decrypt(}}K,\mathit{\boldsymbol{C}} \oplus \mathit{\boldsymbol{C}}'{\rm{)}} = v + v'(\bmod q)$$ $${\rm{Decrypt(}}K,d \odot \mathit{\boldsymbol{C}}{\rm{)}} = d * v(\bmod q)$$ 其中,$ \oplus $表示向量加法;$ \odot $表示向量的标量乘法,$d \in {Z_q}$。
乘法的同态操作还需要用到由$K$生成的公开衡量密钥(public evaluation key),记为${\rm{PE}}{{\rm{K}}_{ij}}(1 \leqslant i \leqslant n,$ $1 \leqslant j \leqslant n)$。对于从密文$\mathit{\boldsymbol{C}}$和$\mathit{\boldsymbol{C}}'$处得到$v * v'$,可以表示成[15]:
$$\begin{gathered} (({c_1} * {{c'}_1}) \odot {\rm{PE}}{{\rm{K}}_{11}}) \oplus \cdots \oplus \\ (({c_i} * {{c'}_j}) \odot {\rm{PE}}{{\rm{K}}_{ij}}) \oplus \cdots \oplus (({c_n} * {{c'}_n}) \odot {\rm{PE}}{{\rm{K}}_{nn}}) \\ \end{gathered} $$ -
密钥交换是对于给定的发布者的秘密钥${K_p}$和订阅者的公开密钥${\rm{P}}{{\rm{K}}_s}$,可将用${K_p}$加密的密文转换成用${K_s}$加密的密文,其中${K_s}$是订阅者的秘密钥[15]。
令${\rm{KeySwitch(P}}{{\rm{K}}_s},{K_p}{\rm{)}}$为交换密钥$\mathit{\boldsymbol{KS}}$的生成函数,则有$\mathit{\boldsymbol{KS}} = \{ \mathit{\boldsymbol{KS}}_1,\mathit{\boldsymbol{KS}}_2, \cdots ,\mathit{\boldsymbol{KS}}_n\} $,其中任意一个$\mathit{\boldsymbol{KS}}_i$是一个$n$维向量。假设有${\rm{Decrypt(}}{K_p},({c_1},$ ${c_2}, \cdots ,{c_n}){\rm{)}} = v$,则用交换密钥$\mathit{\boldsymbol{KS}}$对密文$\mathit{\boldsymbol{C}} = ({c_1},{c_2}, \cdots ,{c_n})$重加密可以表示为[15]:
$$\begin{gathered} {\rm{ReEncrypt}}(\mathit{\boldsymbol{KS}},\mathit{\boldsymbol{C}}) = \\ ({c_1} \odot {\rm{K}}{{\rm{S}}_1}) \oplus ({c_2} \odot \mathit{\boldsymbol{KS}}_2) \oplus \cdots \oplus ({c_n} \odot \mathit{\boldsymbol{KS}}_n) \\ \end{gathered} $$ 令 $C' = {\rm{ReEncrypt(}}\mathit{\boldsymbol{KS}},\mathit{\boldsymbol{C}}{\rm{)}}$ ,则有:
$${\rm{Decrypt(}}{K_s},C'{\rm{)}} = v$$ -
一个属性$A$被定义为$A = ({\rm{st}},{\rm{value}})$,意思为值为${\rm{value}}$的属性${\rm{st}}$。一个用户拥有属性${A_1},{A_2}, \cdots ,{A_t}$可以用连接式${A_1} \wedge {A_2} \wedge \cdots \wedge {A_t}$表示。对于一个给定的系统事件主题${\rm{et}}$,授权策略通过使用用户的具体属性值来限制其是否具有访问主题为${\rm{et}}$的事件数据。
定义1 (授权策略)[16]:一个授权策略的表达式为${\Lambda _{{\rm{et}}}} = ({A_{11}} \wedge {A_{12}} \wedge \cdots \wedge {A_{1t}}) \vee \cdots \vee ({A_{s1}} \wedge {A_{s2}} \wedge \cdots \wedge $ ${A_{st}})$,则其表示当一个用户至少拥有属性连接式${A_{11}} \wedge {A_{12}} \wedge \cdots \wedge {A_{1t}}$到${A_{s1}} \wedge {A_{s2}} \wedge \cdots \wedge {A_{st}}$中一组属性时,其可以访问主题为${\rm{et}}$的数据。
对于一个属性表达式为$\omega = ({A'_{11}} \wedge {A'_{12}} \wedge \cdots \wedge $ ${A'_{1t}}) \vee \cdots $ $ \vee ({A'_{h1}} \wedge {A'_{h2}} \wedge \cdots \wedge {A'_{ht}})$的订阅者,其拥有$h$组不同的连接属性。在这$h$组连接属性中只要有一组出现在${\Lambda _{{\rm{et}}}}$中,则定义$\omega $满足${\Lambda _{{\rm{st}}}}$。
-
ACHO通过基于属性的访问控制机制实现了对用户细粒度的访问控制,由同态加密算法加密的事件数据实现了敏感数据的隐私保护。ACHO机制分成3个主要步骤:1)访问控制机制建立;2)访问控制策略实施;3)系统事件匹配。ACHO机制设计为多对多的应用环境,为了方便在本文中假设为一对一的场景,ACHO机制系统架构和具体6个步骤如图 1所示。
-
设服务发布者$P$发布主题为${\rm{pet}}$,策略为${\Lambda _{{\rm{pet}}}} = $ $({A_{11}} \wedge {A_{12}} \wedge \cdots \wedge {A_{1t}}) \vee ({A_{s1}} \wedge {A_{s2}} \wedge \cdots \wedge {A_{st}})$的事件${E_{{\rm{pet}}}}$,其中事件${E_{{\rm{pet}}}}$的主题个数可以是单个或者多个。${\omega _S} = $$({A'_{11}} \wedge {A'_{12}} \wedge \cdots \wedge {A'_{1t}}) \vee \cdots \vee ({A'_{h1}} \wedge {A'_{h2}} \wedge \cdots \wedge $ ${A'_{ht}})$为订阅者$S$的属性表达式。发布者$P$和订阅者$S$分别生成密钥对$({\rm{P}}{{\rm{K}}_P},{\rm{S}}{{\rm{K}}_P})$和$({\rm{P}}{{\rm{K}}_S},{\rm{S}}{{\rm{K}}_S})$。发布者预先选取两个随机数${r_{pp}}$和${r_{ac}}$,其中${r_{pp}}$的值大于任意事件${E_{{\rm{pet}}}}$中的主题个数。
发布代理人将发布者$P$的访问策略${\Lambda _{{\rm{pet}}}}$中的属性值转换成访问凭证:
$$\begin{gathered} {\omega _{{\rm{pet}}}} = ({\rm{K}}{{\rm{S}}_{P \to S}},\{ ({C_{11}},{C_{12}},{F_1}),({C_{21}},{C_{22}},{F_2}), \cdots , \\ ({C_{s1}},{C_{s2}},{F_s})\} \{ ({C_{13}},{C_{14}}),({C_{23}},{C_{24}}), \cdots ,({C_{h3}},{C_{h4}})\} ) \\ \end{gathered} $$ 其中交换密钥${\rm{K}}{{\rm{S}}_{P \to S}}$由密钥交换函数${\rm{KeySwitch(P}}{{\rm{K}}_S},{\rm{S}}{{\rm{K}}_P}{\rm{)}}$生成,对于每一组属性连接式${A_{i1}} \wedge {A_{i2}} \wedge \cdots {A_{im}}(1 \leqslant i \leqslant n)$,发布者$P$通过属性过滤函数$F({A_{i1}} \wedge \cdots {A_{im}})$生成${F_s}$。
接着,发布代理人使用随机数${r_{up}}$和哈希函数$h$生成${h_{up}} = h({A_{i1}}||{A_{i2}}|| \cdots ||{A_{im}}||{r_{up}})$,由于随机数${r_{up}}$使得即使是相同属性的${h_{up}}$也是不同的。密文${C_{i1}}$、${C_{i2}}$、${C_{j3}}$、${C_{j4}}$和${C_P}$可由下式计算:
$${C_{i1}} = {\rm{Encrypt(S}}{{\rm{K}}_P},{r_{up}}{\rm{)}}$$ $${C_{i2}} = {\rm{Encrypt}}\left( \begin{array}{l} {\rm{S}}{{\rm{K}}_P},{h_{up}} + {r_{pp}} - \hfill \\ {r_{ac}}(h({A_{i1}}) + h({A_{i2}}) + \cdots + h({A_{im}})) \hfill \\ \end{array} \right)$$ $${C_{j3}} = {\rm{Encrypt(P}}{{\rm{K}}_S},{r_S}{\rm{)}}$$ $${C_{j4}} = {\rm{Encrypt}}\left( \begin{array}{l} {\rm{P}}{{\rm{K}}_S},{h_v} + \hfill \\ {r_{ac}}(h({{A'}_{j1}}) + h({{A'}_{j2}}) + \cdots + h({{A'}_{jm}})) \hfill \\ \end{array} \right)$$ $${C_P} = {\rm{Encrypt(S}}{{\rm{K}}_P},{E_{{\rm{pet}}}} + {r_{pp}} * r{\rm{)}}$$ 其中,${E_{{\rm{pet}}}}$为系统事件;${C_P}$是主题为${\rm{pet}}$的事件${E_{{\rm{pet}}}}$的密文。
然后发布代理人将访问属性凭证${\omega _{{\rm{pet}}}}$发送给订阅代理人。
-
订阅代理人收到密文${C_P}$后,检查订阅者$S$的属性连接式${\omega _S}$是否满足${\omega _S} \in {F_s}$。若满足条件,则订阅者$S$为合法用户,订阅代理人则将密文${C_P}$、${C_{i1}}$、${C_{i2}}$转换为${C'_P}$、${C_1}$和${C_S}$:
$$\begin{gathered} {{C'}_P} = {\rm{ReEncrypt(K}}{{\rm{S}}_{P \to S}},{C_P}{\rm{)}} = \\ {\rm{ Encrypt(P}}{{\rm{K}}_S},{E_{{\rm{pet}}}} + {r_{pp}} * r{\rm{)}} \\ \end{gathered} $$ $${C_1} = {\rm{ReEncrypt(K}}{{\rm{S}}_{P \to S}},{C_{i1}}{\rm{)}} = {\rm{Encrypt(P}}{{\rm{K}}_S},{r_{ac}}{\rm{)}}$$ $$\begin{gathered} {C_S} = {\rm{ReEncrypt(K}}{{\rm{S}}_{P \to S}},{C_{i2}}{\rm{)}} \oplus {C_{j4}} = \\ {\rm{Encrypt(P}}{{\rm{K}}_S},{r_{pp}} + {h_{up}} + {h_v}{\rm{)}} \\ \end{gathered} $$ 同时将属性索引值$j$也加密为$I = {\rm{Encrypt(P}}{{\rm{K}}_S},j{\rm{)}}$。在转换完成后,订阅代理人将${C'_P}$、${C_1}$、${C_S}$、$I$和之前得到的${C_{j3}}$发送给订阅者$S$。
若订阅者$S$未能满足访问控制策略,则订阅代理人直接向订阅者返回拒绝访问消息。
-
订阅者$S$收到${C'_P}$、${C_1}$、${C_S}$、$I$和${C_{j3}}$后,首先解密$I$以得到索引$j$,从而得到授权属性连接式${\omega _j} = {A'_{j1}} \wedge {A'_{j2}} \wedge \cdots \wedge {A'_{jm}}$。随后解密${C_{j3}}$和${C_1}$分别得到随机值${r_S}$和${r_{ac}}$。接着订阅者$S$通过以下步骤恢复出${r_{pp}}$:
$${h_{up}} = h({A'_{j1}}||{A'_{j2}}|| \cdots ||{A'_{jm}}||{r_{up}})$$ $${h_v} = h({A'_{j1}}||{A'_{j2}}|| \cdots ||{A'_{jm}}||{r_S})$$ $${r_{pp}} = {\rm{Decrypt}}\left( {S{K_S},{C_S}} \right) - {h_{up}} - {h_v}$$ 最后,订阅者$S$解密密文${C'_P}$,得到${E_{{\rm{pet}}}} + {r_{pp}} * r$,在对${r_{pp}}$进行模操作后恢复出事件${E_{{\rm{pet}}}}$。
-
本文的ACHO机制通过使用公钥基础设施(PKI)中的安全传输层协议(TLS)来保证通信信道安全,从而实现抵抗中间人攻击和欺骗攻击等常见攻击的效果。
ACHO可以抵抗共谋攻击。对于共谋的两个订阅者${S_1}$和${S_2}$均未有访问控制策略所授权的认证属性,因此代理人不能成功地通过属性过滤函数${F_{}}$检查。即使代理人也参与攻击通过检查并为${S_1}$和${S_2}$转换密钥生成${C''_P}$、${C'_1}$、${C'_S}$、$I'$、${C'_{j3}}$和${C'''_P}$、${C''_1}$、${C''_S}$、$I''$、${C''_{j3}}$。${S_1}$和${S_2}$只会得到以下密文:
$${C'_S} = {\rm{Encrypt}}\left( \begin{array}{l} {\rm{P}}{{\rm{K}}_{{S_1}}},{r_{pp}} + {{h'}_{up}} + {{h'}_v} + \hfill \\ {r_{ac}} * \left( \begin{array}{l} h({{A'}_{k1}}) + h({{A'}_{k2}}) + \cdots + h({{A'}_{km}}) - \hfill \\ h({A_{i1}} - {A_{i2}} - \cdots - {A_{im}}) \hfill \\ \end{array} \right) \hfill \\ \end{array} \right)$$ $${C''_S} = {\rm{Encrypt}}\left( \begin{array}{l} {\rm{P}}{{\rm{K}}_{{S_2}}},{r_{pp}} + {{h''}_{up}} + {{h''}_v} + \hfill \\ {r_{ac}} * \left( \begin{array}{l} h({{A'}_{q1}}) + h({{A'}_{q2}}) + \cdots + h({{A'}_{qm}}) - \hfill \\ h({A_{w1}} - {A_{w2}} - \cdots - {A_{wm}}) \hfill \\ \end{array} \right) \hfill \\ \end{array} \right)$$ 由于${S_1}$和${S_2}$并不知道${r_{ac}}$、${A_k}$和${A_w}$的值,因此${S_1}$和${S_2}$不能恢复出${r_{pp}}$和事件${E_{{\rm{pet}}}}$。
ACHO可以抵抗恶意代理人使用其存储的访问授权凭证恢复出加密事件。因为加密事件${E_{{\rm{pet}}}}$只能被发布者或被授权订阅者的私钥解密得到,而恶意代理人并没有这些私钥。
-
定理 1 (正确性)[14]:设有主题为$tp$,访问控制策略为${\mathit{\Gamma} _{{\rm{tp}}}} = ({A_{11}} \wedge {A_{12}} \wedge \cdots \wedge {A_{1m}}) \vee \cdots \vee ({A_{n1}} \wedge $ ${A_{n2}} \wedge \cdots \wedge {A_{nm}})$的事件$E$,属性为$\gamma = ({A'_{11}} \wedge {A'_{12}} \wedge $ $ \cdots \wedge {A'_{1m}}) \vee \cdots \vee $ $({A'_{k1}} \wedge {A'_{k2}} \wedge \cdots \wedge {A'_{km}})$的订阅者$S$。当$1 \leqslant i \leqslant m$且$1 \leqslant j \leqslant k$,有${A_{i1}} = {A'_{j1}}, \cdots $,${A_{im}} = {A'_{jm}}$,则$S$能正确的访问所有主题为${\rm{tp}}$的事件。
证明:在ACHO中,代理人为订阅者$S$生成${C'_P}$、${C_1}$、${C_S}$、$I$和${C_{j3}}$,$S$通过解密最终得到事件${E_{{\rm{pet}}}}$。当${E_{{\rm{pet}}}} + {r_{pp}} * r = {E_{{\rm{pet}}}}(\bmod {r_{pp}})$,若${r_{pp}} > {E_{{\rm{pet}}}}$,则满足定理1。因此ACHO机制满足正确性。
ACHO: An Access Control Scheme Based on Full Homomorphic Encryption for Publish-Subscribe System
-
摘要: 针对发布订阅系统的安全攻击频频出现,为了保护其系统安全和用户隐私,提出一种基于全同态加密算法的访问控制机制(ACHO)。ACHO保证了发布订阅系统中用户交互去耦性和异步通信的特点,同时还能保护系统数据机密性和支持系统可扩展性。ACHO使用全同态加密算法对系统中发布的数据进行加密,同时在密文中嵌入访问控制结构和属性信息来达到控制访问的目的。理论分析了ACHO机制的正确性和安全性。实验结果表明,ACHO在保证安全开销的前提下,达到了发布订阅系统高效运行的性能要求。Abstract: Due to the complex application scenarios, the publish-subscribe (PS) system suffers from masses of security attacks. In order to protect the system security and users privacy, an access control scheme based on full homomorphic encryption (FHE) for PS system, named access control scheme based on full homomorphic encryption (ACHO), has been proposed in this article. ACHO can guarantee the features of decoupling users' interactions and asynchronous communications for PS system. Meanwhile, ACHO can protect the confidentiality of system data and support the system scalability. Specifically, 1) ACHO utilizes the FHE to encrypt the data published in the PS system, 2) it embeds the access control structure and the access attributes to achieve the aim of access control. Security analysis shows that the ACHO can guarantee the correctness and security in theory. Moreover, the experimental results show that ACHO can efficiently achieve the trade-off between the system cost and the security demand.
-
[1] CINQUE M, di MARTINO C, ESPOSITO C. On data dissemination for large-scale complex critical infrastructures[J]. Computer Networks, 2012, 56(4):1215-1235. doi: 10.1016/j.comnet.2011.11.016 [2] ESPOSITO C, CIAMPI M. On security in publish/subscribe services:a survey[J]. IEEE Communications Surveys & Tutorials, 2015, 17(2):966-997. http://dblp.uni-trier.de/db/journals/comsur/comsur17.html#EspositoC15 [3] UZUNOV A V. A survey of security solutions for distributed publish/subscribe systems[J]. Computers & Security, 2016, 61:94-129. http://dblp.uni-trier.de/db/journals/compsec/compsec61.html#Uzunov16 [4] YOUNIS Y A, KIFAYAT K, MERABTI M. An access control model for cloud computing[J]. Journal of Information Security and Applications, 2014, 19(1):45-60. doi: 10.1016/j.jisa.2014.04.003 [5] HU V C, KUHN D R, FERRAIOLO D F. Attribute-based access control[J]. Computer, 2015, 48(2):85-88. doi: 10.1109/MC.2015.33 [6] BRUCKER A D, BRÜGGER L, KEARNEY P, et al. An approach to modular and testable security models of real-world health-care applications[C]//Proceedings of the 16th ACM Symposium on Access Control Models and Technologies. [S. l. ]: ACM, 2011: 133-142. [7] LI Q, ZHANG X, ZHENG Q, et al. LIVE:Lightweight integrity verification and content access control for named data networking[J]. IEEE Transactions on Information Forensics and Security, 2015, 10(2):308-320. doi: 10.1109/TIFS.2014.2365742 [8] JIN Y, TIAN C, HE H, et al. A secure and lightweight data access control scheme for mobile cloud computing[C]//2015 IEEE Fifth International Conference on Big Data and Cloud Computing (BDCloud). [S. l. ]: IEEE, 2015: 172-179. [9] WANG Q, CHEN D, ZHANG N, et al. LACS:a lightweight label-based access control scheme in iot-based 5G caching context[J]. IEEE Access, 2017, 5:4018-4027. doi: 10.1109/ACCESS.2017.2678510 [10] SERVOS D, OSBORN S L. Current research and open problems in attribute-based access control[J]. ACM Computing Surveys (CSUR), 2017, 49(4):65-65. http://dblp.uni-trier.de/db/journals/csur/csur49.html#ServosO17 [11] TOOTOONCHIAN A, GANJALI Y. HyperFlow: a distributed control plane for OpenFlow[C]//Proceedings of the 2010 Internet Network Management Conference on Research on Enterprise Networking. [S. l. ]: [s. n. ], 2010: 3-3. [12] ION M, RUSSELLO G, CRISPO B. Design and implementation of a confidentiality and access control solution for publish/subscribe systems[J]. Computer networks, 2012, 56(7):2014-2037. doi: 10.1016/j.comnet.2012.02.013 [13] FOTIOU N, MARIAS G F, POLYZOS G C. Access control enforcement delegation for information-centric networking architectures[C]//Proceedings of the Second Edition of the ICN Workshop on Information-Centric Networking. [S. l. ]: ACM, 2012: 85-90. [14] DUAN L, LIU D, ZHANG Y, et al. Secure data-centric access control for smart grid services based on publish/subscribe systems[J]. ACM Transactions on Internet Technology (TOIT), 2016, 16(4):23. http://dblp.uni-trier.de/db/journals/toit/toit16.html#DuanLZCLCC16 [15] BRAKERSKI Z, GENTRY C, VAIKUNTANATHAN V. (Leveled) fully homomorphic encryption without bootstrapping[J]. ACM Transactions on Computation Theory (TOCT), 2014, 6(3):13. http://dblp.uni-trier.de/db/conf/innovations/innovations2012.html#BrakerskiGV12 [16] HUR J, NOH D K. Attribute-based access control with efficient revocation in data outsourcing systems[J]. IEEE Transactions on Parallel and Distributed Systems, 2011, 22(7):1214-1221. doi: 10.1109/TPDS.2010.203 [17] WANG Q, CHEN D, DING Z, et al. MESA: an efficient matching scheme in content-based publish/subscribe system with simplified Bayesian approach[C]//Presented at 3rd International Conference on Big Data Computing and Communications. Chengdu: [s. n. ], 2017.