李秋贤,周全兴
(凯里学院,贵州 凯里 556011)
0 引 言随着网络技术和互联网技术的迅速发展,社交网络平台给人们的交流和沟通带来了很多便利,加快了用户之间的信息传播同时也拉近用户之间的关系,社交网络平台的用户数量也日益增加。由于用户需要在社交平台上注册及提交个人信息,各类活动数据都聚集在社交网络平台上,吸引着众多研究者对这些数据进行数据分析和挖掘,因此网络平台中的用户信息和数据存在着一定的隐私泄露风险。
为了保证社交网络中用户个人信息和传播数据的隐私安全,同时提高数据挖掘对社交网络数据分析的有效性,众多学者通过隐私保护的方法保护社交网络中各类信息的安全。Wang等人为了保护社交网络中加权图上两个顶点之间最短路径的权重隐私,提出一个称为k-匿名路径隐私的新概念,并基于贪心的修改算法来修改不同类型的边,实现k-匿名路径隐私。吴响等人提出一种基于广义路径的匿名隐私保护算法——SPOLG算法,通过引入等概率抽样,寻找信息丢失少的广义路径,提高数据处理效率,同时也有效降低了社交网络中所发布数据的信息丢失概率。Ni等人提出一种移动社交网络中基于匿名熵的位置隐私保护方案,该方案涉及在人口稠密地区采用的K-DDCA和在人口稀少地区采用的K-SDCA两种算法解决位置隐私泄露问题。K-DDCA算法采用匿名熵方法选择用户组,构建匿名区域,保证形成的匿名区域面积适中,请求内容的多样性,该方案可以提升隐私保护的效果和效率。虽然这些隐私保护技术一定程度上对各用户的个人信息进行了保护,但仍不乏恶意攻击者通过用户属性和社交网络节点对用户发起攻击。
为了更好地抵抗攻击者通过背景知识学习的恶意攻击,针对大数据环境中真实的网络社交平台进行建模,提出基于聚类的社交网络隐私保护技术,对社交网络中的节点隐私、边隐私和图结构隐私进行深入研究。本文基于贪心的思想进行聚类,降低社交网络平台中信息的损失度,保证社交网络模型中用户信息和发布数据的隐私和有效性。
1 预备知识1.1 全同态加密全同态加密是一种不需要访问数据本身就能对数据进行加密的加密技术,在该加密算法中,使用公钥对数据加密得到相应的密文,然后通过私钥解密得到明文,这与直接对明文进行加解密运算后得到的结果是一样的。一个全同态加密方案一般由以下四个算法组成:
预处理阶段(SK,PK)←SetupFHE(1):输入安全参数,输出对应的公钥和私钥;
加密阶段←EncryptPHE(PK,):输入公钥和需要加密的消息,输出一个对应的密文;
解密阶段←DecryptPHE(SK,):输入私钥和需要解密的密文,输出一个对应的明文;
运算函数c←EvalFHE(PK,,):输入公钥、所有密文组和求值函数,输出最后求解的函数值。
其中,明文=(,…,m),密文=(,…,c),密文组c=(,,…,c),函数值c=(c)。
1.2 社交网络结构社交网络通过各用户在社交平台中进行注册实现用户之间的交流和互动,又可称为社交网络服务,指的是社会关系中的个体信息和社交关系信息,其形式可以用一个带标签的无向无权图=(,)来表示。社交网络是具有个节点的图,其中={,…,v}表示社交网络中各节点的集合,各节点v,=1,…,表示社交网络中的各用户,=(,)表示社交网络中的边集合,和表示节点与节点之间存在的某种关系。
社交网络包含众多社交用户的个人信息和所发布的数据信息,因此在数据发布之前需要对数据进行一定的匿名化处理,这样才能保证用户信息和隐私数据不易被泄露。如图1所示为社交网络中的数据发布场景,该场景可以将社交网络中的数据发布分为两个阶段,第一个阶段为数据收集和预处理阶段,表示在社交平台中从数据发布方进行数据采集,然后对采集到的数据进行匿名化和聚类处理,防止隐私信息的泄露;第二个阶段为数据发布阶段,表示对处理好的用户隐私信息进行发布,供所需数据方进行数据分析与挖掘,提高数据的可用性和价值。
图1 社交网络数据发布场景图
2 基于聚类的社交网络模型本文设计的基于聚类的社交网络模型是利用匿名化处理,对社交网络中的社交节点进行匿名化后,再根据用户信息和数据按照节点相似度进行聚类,并对聚类后的社交网络结构进行分类和区分,如图2所示。根据已有的社交网络结构=(,)和社交网络结构图中的节点间距离进行聚类,使得每个聚类后的超节点中至少包含个节点数,然后再对聚类后的超节点进行匿名化处理,保证任何恶意攻击者获取用户或数据信息的概率低于1/。
图2 聚类社交网络模型图
基于聚类的社交网络模型采用k-prototype聚类技术进行设计,该技术通过记录社交网络各节点之间的距离,然后将距离较近的节点聚类到最近的超节点中,并通过聚类超节点样本来更新网络节点,以保证所有的节点都聚类到超节点中。聚类的超节点至少包含个网络节点,在社交网络模型中,随机选择个节点,根据节点间距离计算得到一条记录到中心节点的距离,然后每次迭代对所有超节点进行计算,直至得到最优的聚类结果,然后选择最有效的节点值,最后进行输出。
聚类算法运算结束后,社交网络结构中的所有节点都应满足相应的隐私保护力度,然后再对聚类后的超节点进行匿名化处理,以进一步保证用户信息e和数据的安全性,提高社交网络中数据的隐私性和有效性。
3 基于聚类的社交网络方案本文所提出基于聚类的社交网络方案是基于全同态加密技术和k-prototype聚类技术实现的,即方案中社交网络节点的隐私是通过对各节点进行匿名化聚类实现的,社交过程采用全同态加密技术实现对节点发送消息的加密,从而保证用户个人以及消息的隐私性。本文构造的基于聚类的社交网络方案包括四个阶段,分别为初始化阶段、秘钥生成阶段、加解密阶段和节点聚类阶段。保护方案框架结构图如图3所示。
图3 保护方案框架结构图
3.1 初始化阶段首先需要输入社交网络并将其建模为社交网络图结构,然后输入匿名模型随机参数,并对所选取的初始种子节点进行匿名化处理。在此阶段中,需要保证所有的网络节点都分配到对应的超节点中,且超节点中含有的节点数大于等于个,以保证任何恶意攻击者获取用户或数据信息的概率低于1/。
3.2 秘钥生成阶段根据所设计的基于聚类的社交网络模型,结合全同态加密技术构造支持隐私保护的社交网络方案。在秘钥生成阶段,首先需要输入安全参数和匿名后的社交网络图G*,通过全同态加密算法随机生成公钥和私钥对(PK,SK),作为私密信息的加密和加密秘钥,以保证用户在社交过程中,之前发布的交流和隐私数据不被泄露。
3.3 加解密阶段社交过程中,各数据发布者和数据使用者在发布数据信息和分析挖掘数据信息的时候,需要对数据信息进行加密和解密。首先,数据发布者需要使用秘钥算法生成的公钥PK对社交网络平台中需要加密的消息m进行加密处理,然后再通过安全的数据通道对所生成的密文消息进行发布和传递。
数据使用者接收到加密后的数据后,利用秘钥生成算法生成公钥对应的私钥SK,对需要解密的消息m进行解密,然后利用解密算法输出加密密文对应的明文消息,在此社交网络消息发布和传递过程中,只有网络结构中相应的节点才能进行访问和解密。
3.4 节点聚类阶段在节点聚类阶段,首先需要确定已做匿名化处理的各个节点的隐私保护力度,然后利用k-prototype聚类技术计算各个节点之间的距离,根据计算得到的距离将距离相近的节点聚类到一个超节点中。再次对聚类得到的超节点进行匿名化处理,且超节点中含有的节点数大于等于个,以保证所有节点都满足隐私保护力度,且能达到良好的聚类效果。
4 方案分析4.1 性能对比分析本文将所构造的基于聚类的社交网络安全方案和已有的社交网络安全方案进行对比与分析,表1为性能分析结果,其中“√”表示该方案满足对应的性能,“×”表示该方案不能满足对应的性能。我们主要基于社交网络中存在不同的攻击类型进行分析和对比,分别为被动攻击、背景知识攻击和推理攻击三个类型。
表1 不同方案性能分析对比表
4.2 安全性分析定理 本文构造的基于聚类的社交网络方案中,如果全同态加密满足其安全性,则所提出的模型和方案也是安全的。
证明:在社交网络初始化阶段,假如该方案中存在恶意的攻击者,则恶意的数据使用者会对数据进行随意篡改或者肆意发布;但在秘钥生成和加解密阶段,恶意攻击者A以目标节点v的社交网络图结构信息为背景知识,对发布的图G*进行攻击,由于G*是经过k-匿名化的结构图,所以恶意攻击者A能够识别目标节点v的概率为1/。但根据全同态加密中单项函数的散列性质,攻击者无法从社交网络中获取具体的值,所以攻击者在任意概率多项式时间内找到和使得G*=G成立的概率是可以忽略不计的。因此本文提出的基于聚类的社交网络方案安全的。
5 结 论本文结合全同态加密技术和k-prototype聚类技术设计了基于聚类的社交网络安全方案,为了实现方案的安全性和有效性,首先构造了基于聚类的社交网络模型,利用k-prototype聚类技术对距离较近的网络节点进行聚类再匿名化处理,使方案中的数据拥有者和数据使用者能够较为安全地进行数据分析和挖掘。方案满足了安全性要求,且可抵抗被动攻击、背景知识等不同的攻击,实现了高效的社交网络数据发布和信息交流。