[ndss 2023]确保联邦敏感主题分类免受中毒攻击

news2024/11/26 16:38:45
Securing Federated Sensitive Topic Classification against Poisoning Attacks

摘要

我们提出了一种基于联邦学习 (FL) 的解决方案,用于构建能够检测包含敏感内容的 URL 的分布式分类器,即与健康、政治信仰、性取向等类别相关的内容。尽管这样的分类器解决了以前的局限性离线/集中式分类器,它仍然容易受到恶意用户的中毒攻击,这些用户可能试图通过传播错误的模型更新来降低良性用户的准确性。为了防止这种情况,我们开发了一种基于主观逻辑和基于残差的攻击检测的鲁棒聚合方案。结合理论分析、跟踪驱动的模拟以及原型和真实用户的实验验证,我们表明我们的分类器可以高精度检测敏感内容,快速学习新标签,并在中毒攻击时保持鲁棒性来自恶意用户的输入,以及来自非恶意用户的不完美输入。

一、引言

大多数人并不知道即使在敏感网络域上也存在跟踪服务。当谈到许多人对其在线隐私的焦虑时,在癌症讨论论坛、约会网站或具有非主流政治亲和力的新闻网站上被跟踪可以被视为“房间里的大象”。一般数据保护条例 (GDPR)  [33]对敏感个人数据的收集和处理施加了具体限制,“揭示种族或民族血统、政治观点、宗教或哲学信仰或工会会员身份,以及基因数据、用于唯一识别自然人的生物识别数据、数据关于健康或有关自然人性生活或性取向的数据”。世界各地的其他公共机构也是如此,例如在加利福尼亚州(《加利福尼亚州消费者隐私法》(CCPA)  [34]), 加拿大 [35], 以色列 [36], 日本 [37]和澳大利亚 [38]。

在最近的一篇论文中,Matic 等人。 [4]展示了如何训练分类器来检测 URL 的内容是否与上述任何敏感类别相关。使用从 Curlie 获得的 156,000 个敏感 URL 来训练分类器 [32]众包网络分类项目。尽管已证明具有很高的准确性,但该方法由于集中与固定训练集相关而存在局限性。第一个限制意味着该方法不能“按原样”使用来驱动隐私保护分布式分类系统。第二个限制意味着覆盖与尚未见过的敏感内容相关的新标签并不简单。例如,在他们的工作中,健康类别的分类准确率超过 90%。然而,2020 年从 Curlie 获得的培训标签并不包含任何与 COVID-19 大流行相关的标签。因此,如稍后所示,该分类器对 COVID-19 相关网站进行分类的准确率仅为 53.13%。

联邦学习(佛罗里达州)  [5,13]为上述两个限制提供了一个自然的解决方案,即集中训练和固定训练集的训练。FL 允许不同的客户在本地训练他们的分类模型,而无需透露他们标记的新的或现有的敏感 URL,同时通过共享模型更新进行协作,这些模型更新可以组合起来构建卓越的全局分类模型。FL 已在大量实际应用中证明了其价值,包括移动计算 [46,47,48]健康和医疗应用 [49,50,51]。然而,由于其本质,FL 很容易受到所谓的中毒攻击 [26,12]由恶意客户端安装,这些客户端可能会故意使用错误标签或后门模式训练其本地模型,然后传播结果更新,以降低其他良性客户端的分类准确性。防御此类攻击的最先进方法依赖于强大的聚合 [27,20,16,15,8,60],正如我们稍后将演示的那样,其收敛速度很慢,因此对于我们在本文中解决的敏感内容分类问题来说是不切实际的。

我们的贡献:在本文中,我们采用 FL 进行敏感内容分类。我们展示了如何开发一种强大的 FL 方法来对可能包含 GDPR 敏感内容的任意 URL 进行分类。这种基于 FL 的解决方案允许构建一个分布式分类器,该分类器可以以 Web 浏览器扩展的形式提供给最终用户,以便:(i) 在他们导航到此类网站之前和期间向他们发出警告,尤其是在这些网站被填充时与跟踪器,以及 (ii) 允许他们贡献新标签,例如有关 COVID-19 的健康相关网站,从而使分类器始终保持最新状态。据我们所知,该方法代表了 FL 首次用于此类任务。

我们的第二个主要贡献是开发声誉评分,以保护我们基于 FL 的解决方案免受中毒攻击 [12,26]。我们的方法基于主观逻辑的新颖组合 [3]具有基于残留的攻击检测。我们的第三个贡献是开发了一个广泛的理论和实验性能评估框架,用于研究我们提出的机制的准确性、收敛性和抗攻击能力。我们的最终贡献是在名为EITR (代表隐私的“房间里的大象”)的原型系统中实施我们的方法,以及我们对真实用户的初步实验验证,其任务是为准确分类 COVID-19 相关 URL 提供新标签。

我们的发现:通过结合理论分析、模拟和真实用户实验,我们:

  • 过实验证明我们基于 FL 的分类器达到了与 [4]。

  • 通过分析证明,在数据中毒攻击下,我们围绕主观逻辑构建的基于声誉的鲁棒聚合,在标准假设下收敛到相应拜占庭容错问题的近乎最优解决方案。由此产生的性能差距由恶意用户的百分比决定。

  • 根据联邦平均等最先进的算法对我们的解决方案进行实验 评估5] , 坐标中位数 [20] , 截尾均值 [20] , 愚人金 [15,8] , 基于残差的重新加权 [16]和 FLTrust  [60],并通过使用不同的真实世界数据集证明我们的算法在拜占庭攻击下具有鲁棒性。我们证明,我们的解决方案在收敛速度方面优于这些流行的解决方案,其范围为1.6×到2.4×同时达到相同或更好的精度。此外,我们的方法产生最一致和最低的攻击成功率 (ASR),与所有其他方法相比平均提高至少 72.3%。

  • 使用我们的EITR浏览器扩展程序验证我们基于 FL 的解决方案可以快速学习对有关 COVID-19 的健康相关网站进行分类,即使考虑到真实用户提供的嘈杂/不一致的输入也是如此。

本文其余部分的结构如下: 第二部分介绍了我们主题的背景。第三节 介绍了我们基于FL的敏感内容分类的声誉方案及其理论分析和保证。第四部分 介绍了我们针对最先进技术进行的广泛性能评估,第五部分介绍了 我们的EITR浏览器扩展的一些初步结果。第六节 总结了本文,并指出了正在进行的和未来的工作,包括将我们的方法推广到其他主题。

二背景

Ⅱ-A针对敏感内容的集中式离线分类器

马蒂奇等人。 [4]展示了如何开发能够检测包含敏感内容的 URL 的文本分类器。该分类器是集中式的,开发的目的是进行一次性离线研究,旨在估计包含此类内容的网络百分比。尽管达到了至少 88% 的准确率,但利用通过过滤 Curlie 网络分类项目精心收集的高质量训练集 [32],此分类器不能“按原样”使用来保护访问由跟踪服务填充的敏感 URL 的真实用户。

Ⅱ-B为用户开发实用分类器的挑战

从离线到在线:[中的分类器 4]使用包含 156,000 个敏感 URL 的数据集进行训练。尽管是近期文献中同类数据中最大的数据集,但该数据集是静态的,因此代表了收集时的敏感主题。当然,这并不意味着用这些数据训练的新分类器永远无法准确地对属于这些敏感类别的新 URL 进行分类。这是因为健康等类别涉及的内容和术语不会随时间发生根本变化。当然,可能会出现新类型的敏感内容,无论出于何种原因,使用从同一敏感类别的过去内容中提取的特征可能无法如此准确地进行分类。与最近的 COVID-19 大流行相关的内容就是一个例子。尽管健康类别在训练集中有 74,764 个 URL  [4]这导致健康的分类准确率为 88%,正如我们稍后将在图 14 VC 节中间 看到的那样, [的分类器 4]在我们测试的 COVID-19 URL 中,只有 53.13% 准确地分类为健康。这应该不足为奇,因为 [的数据集4]对应于 2020 年头几个月之前生成的内容,在此期间,COVID-19 尚未成为热门话题。因此,我们需要找到一种方法来更新现有的分类器,使其在新的敏感内容出现时保持准确。

从集中式到分布式:保持分类器最新的一种自然方法是要求最终用户在遇到新的敏感 URL 时对其进行标记。最终用户可以向集中式服务器报告此类 URL,然后可以使用这些 URL 来重新训练分类模型。然而,这带来了明显的“第二十二条军规”性质的隐私挑战,因为为了通过警告用户敏感 URL 上存在跟踪器来保护用户,他们首先需要向潜在不受信任的集中式服务器报告他们访问了此类 URL 。即使采用一些解决数据稀缺问题的方法,例如半监督学习,用户的手动标记仍然很敏感,并且可能会受到不可信服务器的损害。正如已经提到的,联邦学习是一种很有前途的解决方案,可以通过进行分布式(尽管是保护隐私的)模型训练来避免上述 Catch22。在解决我们问题的 FL 方法中,用户将在本地标记新 URL(例如,将 COVID-19 URL 标记为“健康”),在本地重新训练分类器模型,然后将模型更新(而不是标记数据)发送到集中式服务器,该服务器从以下位置收集此类更新:所有用户,编译新版本的模型并将其重新分发给他们。在第三节中, 我们展示了如何开发 [的敏感主题分类器的分布式版本]4]使用FL。使用 FL 的缺点是分布式学习组容易受到攻击,例如第四节中讨论的“标签翻转”中毒 攻击。本文开发了一种用于减轻此类攻击的信誉方案。第六节讨论了其他类型的攻击和保护参与基于 FL 的敏感内容分类系统的用户隐私的措施 。

Ⅱ-C相关工作

隐私保护众包:Price $heriff 等服务也面临着与上一段讨论的类似挑战。54]和EyeWnder  [55]分别使用众包来检测在线价格歧视和定向广告。安全多方计算(SMPC)技术,例如私有�-方法 [56] 用于允许最终用户以保护隐私的方式在集中式服务器中发送数据。Price $heriffeyeWnder执行的集中计算不属于 ML 性质,因此数据匿名化成为主要挑战,而 SMPC 非常适合。将内容分类为敏感或不敏感是一种更复杂的基于 ML 的算法,对于该算法,FL 是比 SMPC 更自然的解决方案。
FL 的一般作品: FL  [5,13]是一种引人注目的技术,用于训练大规模分布式机器学习模型,同时保持安全性和隐私性。FL 的动机是本地训练数据始终由客户端保存,服务器无法访问这些数据。由于这种好处可以减轻隐私问题,一些公司已在现实世界的服务中使用 FL。在移动设备中,FL用于预测键盘输入 [46] , 人员流动性 [47]和物联网行为 [48]。FL 还应用于医疗保健领域来预测疾病 [49,50],检测患者相似度 [51]同时克服任何隐私限制。对于分类来说,FL不仅仅用于图像分类 [52]还有文本分类 [53]。
对中毒攻击的抵抗力:由于其性质 [26,12],FL容易受到中毒攻击,例如标签翻转 [16]和后门攻击 [12]。因此,几种防御方法被开发出来 [20,16,15,8]。虽然这些最先进的方法在某些情况下表现出色,但它们并非没有局限性。首先,它们不适合我们的敏感内容分类,这需要分类器对互联网上出现的“新鲜”敏感信息做出非常快速的响应。在现有方法中,主要目标是实现高分类精度。这是通过对客户提供的模型更新进行统计分析并在聚合阶段之前丢弃可疑的异常值来实现的。然而,由于服务器默认不信任每个人,即使诚实的客户端发现了一些新的敏感标签,其相应的更新也可能被丢弃或分配较低的权重,直到更多的客户端开始发现这些标签。这会导致新标签的学习速度变慢。

二、近期研究 [26,12]已经表明,现有的拜占庭鲁棒 FL 方法仍然容易受到局部模型中毒的影响,因为它们由于不跟踪先前聚合轮次的信息而导致健忘。因此,攻击者可以通过跨时间传播攻击来有效地发起攻击 [31]。例如,[22]最近表明,即使经过无限的训练周期,任何忽略过去的聚合都无法收敛到有效的解决方案。

前面的研究证明了将客户之前的长期表现纳入评估其可信度的重要性。最近很少有研究考虑过这种方法 [60,22]。在 [22],作者建议利用历史信息进行优化,但不用于评估可信度。在 [60],根据客户端和服务器模型更新之间的余弦相似度为每个客户端模型更新分配信任分数,该信任分数在服务器的根数据集上进行训练(详细信息请参见第 IV-A 3节)。然而,服务器获取额外的数据(例如根数据集)来训练服务器端模型是不切实际的。此外,由于服务器只收集一次根数据,并且在整个训练过程中不会更新它,因此当随着时间的推移出现新类型的内容时,根数据可能会变得过时,从而损害分类器的性能。最近的其他研究采用了光谱分析 [63] , 差分隐私 [65]和深度模型检查 [66]来防范中毒攻击,但是,同样,他们不使用历史信息来评估客户端的可靠性。为了衡量客户端的可信度而不在服务器上收集额外的数据,在接下来的部分中,我们将展示如何设计一个强大的聚合方法来根据客户端的历史行为自动生成声誉,这对于真正的基于 FL 的去中心化来说是一种更现实的方法系统作为客户端的浏览器扩展实现。

三、用于对 Web 上的敏感内容进行分类的鲁棒 FL 方法

在本节中,我们首先展示如何为敏感内容构建基于 FL 的分类器。然后我们设计一个声誉评分来防止中毒攻击。我们从理论上分析了基于 FL/信誉的组合解决方案,并在常见操作假设下建立了收敛性和准确性保证。

Ⅲ-A用于对敏感内容进行分类的 FL 框架

表I给出了我们在本文剩余部分中使用的符号。在FL中,客户端从其本地模型向服务器提供更新的参数,服务器聚合这些参数以构建全局模型 M 。

III-B A挫败中毒攻击的声誉得分

图2:基于声誉的聚合算法概述。
图2:基于声誉的聚合算法概述。

图2显示了我们基于信誉的聚合算法的概述,该算法由三个组件组成:攻击检测方案、信誉模型和聚合模块。攻击检测方案重新缩放并纠正从客户端接收的破坏性更新。然后,信誉模型根据每个客户端过去的检测结果计算每个客户端的信誉。最后,聚合模块通过使用客户端的信誉分数作为权重来平均客户端的更新来计算全局模型。我们将在以下小节中详细介绍每个组件。

III-B1攻击检测方案

我们的攻击检测方案旨在通过识别可疑更新并应用重新缩放算法来减少可疑更新的影响。在每次迭代中,当来自客户端的模型更新到达服务器时,我们在那里应用算法1来重新调整更新中这些参数的值的范围。

对值范围的这种限制不仅旨在最大限度地减少攻击者异常更新的影响,还旨在限制重复中位数回归的斜率。考虑到所有参与者在第1轮中的第0个参数,我们计算该系列的标准差第2个参数。然后,我们将它们按升序排序,并通过从最高值中减去最低值来确定范围。如果结果高于阈值ω  ,则通过分别减去和添加其标准差来重新缩放最高值和最低值,以进一步限制其范围。

 III-B2声誉模型

为了演示声誉模型如何演变,我们考虑四种情况,其中每个客户端:(i)在同一迭代中仅攻击一次,(ii)在同一迭代中发起攻击后连续攻击,(iii)在不同迭代中仅攻击一次,(iv)在不同迭代中发起攻击后连续攻击。在这里,客户端在训练本地模型时利用污染数据进行第IV-A2节中描述的攻击,而服务器使用我们的攻击检测机制来识别这些攻击。

Refer to caption

图三:当户端(X )(a)在第三次迭代时攻击一次,并且(B)在第三次迭代时和之后连续攻击时,具有 X模型参数的客户端( X )中的信誉分数的衰减。

图3显示了前两个场景(i)-图3a和(ii)-图3b,分别是在单次和连续攻击下,客户端 X 在其本地模型中具有 X参数。在图3a中,所有客户端在第三次迭代中只攻击一次。当他们开始攻击时,他们的声誉得分急剧下降。在这两种情况下,我们观察到拥有更多参数的客户端在声誉得分上有较大的相对下降。这也与第III-C节中的推论1相容,即,增加全局模型中的参数 X 的数量导致较低的错误率。

图4显示了最后两个场景(iii)和(iv),分别是客户端在其本地模型中有20个参数,在单一和连续攻击下。在图4a中,客户端X 仅在 X迭代时发起攻击。我们观察到,只有一次攻击会导致声誉得分至少下降25.11%。在图4b中,客户端X 在 X迭代时发起攻击,并在随后的迭代中继续攻击。最后,我们观察到80%的信誉评分低于0.5,这大约是诚实客户信誉评分的一半,这意味着他们在整个聚合过程中可能造成的损害大大减少。

Refer to caption

图四:在具有相同模型参数的客户端X 中,当它们(a)在X迭代时攻击一次并且(B)在X 迭代开始攻击之后连续攻击时信誉分数的衰减。

此外,我们考虑了一种情况,其中攻击者在较长的时间内传播中毒,同时使用更多的模型参数。图5(左)描述了在不同参数大小下进行40次迭代的攻击。图5(右)描述了每50到80次迭代重复100万个参数的攻击。这些数字表明,即使攻击者在多次迭代中传播我们的中毒,然后试图通过善意的行为来恢复他们的声誉得分,我们的检测方案仍然可以识别他们。这是因为我们的攻击检测和信誉方案按顺序工作。攻击检测方案检测恶意更新,而不考虑任何信誉分数,并纠正他们,以减轻损害。然后,信誉方案基于检测结果修改信誉分数。此外,使用更多模型参数的攻击者遭受的声誉降低略高,这与推论1一致。

III-B3聚合算法

在服务器获得校正更新和每个客户端的标准化声誉之后,它使用平均加权声誉作为权重来聚合更新,以获得当前迭代的全局模型更新。通过这种方式,即使在许多训练轮中,攻击者仍然无法从目标方向明显地改变参数,这确保了所产生的全局模型的质量,这将在接下来的实验和分析中得到证明。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1296396.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker:搭建私有仓库

文章目录 1、拉取镜像2、运行容器3、测试成功4、修改daemon.json5、重启docker 服务6、上传镜像到私有仓库6.1 标记某个镜像为私有仓库镜像6.2 上传镜像到私有仓库 其他注意项 1、拉取镜像 docker pull registry2、运行容器 docker run -di --nameregistry -p 5000:5000 regi…

3DCAT+上汽奥迪:打造新零售汽车配置器实时云渲染解决方案

在 5G、云计算等技术飞速发展的加持下,云渲染技术迎来了突飞猛进的发展。在这样的背景下,3DCAT应运而生,成为了业内知名的实时云渲染服务商之一。 交互式3D实时云看车作为云渲染技术的一种使用场景,也逐步成为一种新的看车方式&a…

HttpComponents: 领域对象的设计

1. HTTP协议 1.1 HTTP请求 HTTP请求由请求头、请求体两部分组成,请求头又分为请求行(request line)和普通的请求头组成。通过浏览器的开发者工具,我们能查看请求和响应的详情。 下面是一个HTTP请求发送的完整内容。 POST https://track.abc.com/v4/tr…

金融银行业更适合申请哪种SSL证书?

在当今数字化时代,金融行业的重要性日益增加。越来越多的金融交易和敏感信息在线进行,金融银行机构必须采取必要的措施来保护客户数据的安全。SSL证书作为一种重要的安全技术工具,可以帮助金融银行机构加密数据传输,验证网站身份&…

html中一个div中平均一行分配四个盒子,可展开与收起所有的盒子

html中一个div中平均一行分配四个盒子&#xff0c;可展开与收起所有的盒子 1.截图显示部分 2.代码展示部分 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"wid…

物易管预测性维护平台3.6.0版本上线,工况数据处理、设备故障模型、数据可视化等方面带来全新功能体验

物易管设备预测性维护平台V3.6.0版本近日正式发布上线&#xff0c;相较V3.5.0版本次主要新增优化设备工况数据接入、工况数据模型训练、数据可视化以及设备监测详情优化四个板块。新版本在处理工况数据、设备故障模型、数据分析展示以及设备监测方面带来全新的体验。 01设备工况…

【投稿】期刊选择

一、期刊影响力评价方法 只要投稿的期刊&#xff0c;被上述三个索引收录&#xff0c;那就说明该期刊的影响力是得到认可的。 二、如何选择合适的期刊 研究工作和目标期刊进行权衡。

[GXYCTF2019]禁止套娃1

提示 git泄露无参数rce &#xff01;&#xff01;注意需要python3环境 github里dirsearch工具下载位置 ###可能需要开节点才能打开 百度网盘dirsearch下载地址 ###如果github里下载不了可以在网盘下载 提取码sx5d 只给了flag在哪里呢&#xff0c;那么应该就是要让…

电子学会C/C++编程等级考试2021年09月(五级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:抓牛 农夫知道一头牛的位置,想要抓住它。农夫和牛都位于数轴上,农夫起始位于点N(0<=N<=100000),牛位于点K(0<=K<=100000)。农夫有两种移动方式: 1、从X移动到X-1或X+1,每次移动花费一分钟 2、从X移动到2*X,每…

Axios 拦截器实战教程:简单易懂

Axios 提供了一种称为 “拦截器&#xff08;interceptors&#xff09;” 的功能&#xff0c;使我们能够在请求或响应被发送或处理之前对它们进行全局处理。拦截器为我们提供了一种简洁而强大的方式来转换请求和响应、进行错误处理、添加认证信息等操作。在本文中&#xff0c;我…

案例063:基于微信小程序的传染病防控宣传系统

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder …

如何进行更好的面试回复之缓存函数在项目中的性能优化?

缓存函数是一种提高函数性能的技术&#xff0c;在函数被调用时&#xff0c;会将计算结果缓存起来&#xff0c;以便在后续的调用中直接返回缓存的结果&#xff0c;从而减少了重复计算的时间。 缓存函数的实现通常包括两个步骤&#xff1a; 判断缓存是否存在&#xff1a;在函数被…

Mysql 命令行导出SQL文件和导入文件

1-导出SQL文件 要导出 MySQL 数据库到一个 SQL 文件&#xff0c;你可以使用 mysqldump 工具&#xff0c;它是 MySQL 的一个命令行工具&#xff0c;以下是一些步骤&#xff1a; 打开终端&#xff0c;并使用以下命令来执行导出操作&#xff1a; mysqldump -u wqzbxh -h 1.137.15…

DAP数据集成与算法模型如何结合使用

企业信息化建设会越来越完善&#xff0c;越来越体系化&#xff0c;当今数据时代背景下更加强调、重视数据的价值&#xff0c;以数据说话&#xff0c;通过数据为企业提升渠道转化率、改善企业产品、实现精准运营&#xff0c;为企业打造自助模式的数据分析成果&#xff0c;以数据…

无人机巡山护林,林业无人机智能助力绿色守护

随着全球环保意识的不断提高&#xff0c;无人机巡山护林已经成为解决森林巡检难题的一种独特而高效的方式。在我国&#xff0c;各地正积极探索无人机在森林防火、病虫害监测以及生态调查等领域的创新应用。随着无人机技术的不断演进&#xff0c;其在推动森林保护和可持续发展方…

高性能和多级高可用,云原生数据库 GaiaDB 架构设计解析

1 云原生数据库和 GaiaDB 目前&#xff0c;云原生数据库已经被各行各业大规模投入到实际生产中&#xff0c;最终的目标都是「单机 分布式一体化」。但在演进路线上&#xff0c;当前主要有两个略有不同的路径。 一种是各大公有云厂商选择的优先保证上云兼容性的路线。它基于存…

工作上Redis安装及配置

下载redis软件 第一步&#xff1a;解压压缩包 tar -zxvf redis-7.0.14.tar.gz 第二步&#xff1a;移动redis存放目录&#xff08;结合个人需求而定&#xff01;&#xff09; redis-7.0.14&#xff1a;解压后的文件路径 /usr/local&#xff1a;移动后的文件路径 mv redis-7.0.…

QT作业2

使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0c;密码是否为…

Flutter一直 Running Gradle task ‘assembleDebug‘

Flutter升级到3.13.7之后&#xff0c;一直Running Gradle task ‘assembleDebug’&#xff0c;之前运行还没问题。 试了各种方法&#xff0c;比如添加阿里云镜像&#xff0c;flutter\packages\flutter_tools\gradle目录下修改build.gradle.kts文件&#xff0c;都不行。 参考大佬…

WeLive开源在线客服系统源码 /PHP企业级在线客服聊天系统源码/支持移动+PC端+中英文双语自由切换

源码简介&#xff1a; WeLive开源在线客服系统源码 &#xff0c;它作为企业级在线客服系统源码&#xff0c;可以支持移动PC端&#xff0c;中英文双语自由切换。 WeLive开源PHP在线客服系统源码 WeLive5是一个企业级的在线客服系统, 程序小巧使用简单。 WeLive5是一个企业级的…