2023, 34(6):2507-2508. DOI: 10.13328/j.cnki.jos.006854
摘要:
2023, 34(6):2509-2525. DOI: 10.13328/j.cnki.jos.006846
摘要:研究人员将软件系统中的关键类作为理解和维护一个系统的起点,而关键类上的缺陷给系统带来了极大的安全隐患.因此,识别关键类可提高软件的可靠性和稳定性.常用的识别方法是将软件系统抽象为一个类依赖网络,再根据定义好的度量指标和计算规则计算每个节点的重要性得分,如此基于非训练框架得到的关键类,并没有充分利用软件网络的结构信息.针对这一问题,基于图神经网络技术提出了一种有监督的关键类识别方法.首先,将软件系统抽象为类粒度的软件网络,并利用网络嵌入学习方法Node2Vec得到类节点的表征向量,再通过一个全连接层将节点的表征向量转换为具体分值;然后,利用改进的图神经网络模型,综合考虑类节点之间的依赖方向和权重,进行节点分值的聚合操作;最后,模型输出每个类节点的最终得分并进行降序排列,从而实现关键类的识别.在8个Java开源软件系统上,通过与基准方法的实验对比,验证了该方法的有效性.实验结果表明:在前10个候选关键类中,所提方法比最先进的方法提升了6.4%的召回率和3.5%的精确率.
2023, 34(6):2526-2542. DOI: 10.13328/j.cnki.jos.006848
摘要:自安卓系统发布以来,由于其开源、硬件丰富和应用市场多样等优势,该系统已成为全球使用最广泛的手机操作系统.同时,安卓设备和安卓应用的爆炸式增长也使其成为96%移动恶意软件的攻击目标.在现有的安卓恶意软件检测方法中,忽视程序语义而直接提取简单程序特征的方法,其检测速度快但精确度不够理想,将程序语义转换为图模型并采用图分析的方法,其精确度虽高但开销大且扩展性低.为了解决上述挑战,将应用的程序语义提取为函数调用图,在保留语义信息的同时,采用抽象API技术将调用图转换为抽象图,以减少运行开销并增强鲁棒性.基于得到的抽象图,以Triplet Loss损失训练构建基于图卷积网络的抗混淆安卓恶意软件分类器SriDroid.对20 246个安卓应用进行实验分析后发现:SriDroid可以达到99.17%的恶意软件检测精确度,并具有良好的鲁棒性.
2023, 34(6):2543-2561. DOI: 10.13328/j.cnki.jos.006849
摘要:随着软件的复杂程度越来越高,对漏洞检测的研究需求也日益增大.软件漏洞的迅速发现和修补,可以将漏洞带来的损失降到最低.基于深度学习的漏洞检测方法作为目前新兴的检测手段,可以从漏洞代码中自动学习其隐含的漏洞模式,节省了大量人力投入.但基于深度学习的漏洞检测方法尚未完善,其中,函数级别的检测方法存在检测粒度较粗且检测准确率较低的问题,切片级别的检测方法虽然能够有效减少样本噪声,但仍存在以下两方面的问题:一方面,现有方法大多采用人工漏洞数据集进行实验,因此其在真实环境中的漏洞检测能力仍然存疑;另一方面,相关工作仅致力于检测出切片样本是否存在漏洞,而缺乏对检测结果可解释性的考虑.针对上述问题,提出基于图神经网络的切片级漏洞检测及解释方法.该方法首先对C/C++源代码进行规范化并提取切片,以减少样本冗余信息干扰;之后,采用图神经网络模型进行切片嵌入得到其向量表征,以保留源代码的结构信息和漏洞特征;然后,将切片的向量表征输入漏洞检测模型进行训练和预测;最后,将训练完成的漏洞检测模型和待解释的漏洞切片输入漏洞解释器,得到具体的漏洞代码行.实验结果显示:在漏洞检测方面,该方法对于真实漏洞数据的检测F1分数达到75.1%,相较于对比方法提升了41.2%-110.4%;在漏洞解释方面,该方法在限定前10%的关键节点时,准确率可达73.6%,相较于两种对比解释器分别提升了8.9%和24.9%,且时间开销分别缩短了42.5%和15.4%.最后,该方法正确检测并解释了4个开源软件中59个真实漏洞,证明了其在现实世界漏洞发掘方面的实用性.
2023, 34(6):2562-2585. DOI: 10.13328/j.cnki.jos.006853
摘要:软件系统的实体演化耦合分析有助于共同变更预测、软件供应链风险识别、代码漏洞溯源、缺陷预测、架构问题定位等分析活动.两个代码实体之间存在演化耦合(evolutionary coupling)是指在软件修订历史中,这对实体倾向于共同变更(共变).已有的演化耦合分析方法难以准确检测软件维护历史中频繁发生的、有“距离”的共变.为了解决这一问题,提出了基于关联规则挖掘、情节挖掘、潜在语义索引模型相结合的演化耦合分析方法(association rule,MINEPI and LSI based method,AR-MIM),以挖掘有“距离”的共同变更关系.实验收集了58个Python项目、242 074条训练数据、330 660条ground truth的数据集,与已有的4种baseline方法进行了比较,验证了AR-MIM的效果.结果表明:在预测共同变更候选项场景上,AR-MIM的准确性、召回率、F1分数均优于已有方法.
2023, 34(6):2586-2605. DOI: 10.13328/j.cnki.jos.006851
摘要:无人驾驶汽车系统过大的输入-输出空间(即输入和输出的所有可能组合),使得为其提供形式化保证变成一项具有挑战性的任务.提出了一种自动验证技术,通过结合凸优化和深度学习验证工具DLV来保障无人驾驶汽车的转向角安全.DLV是一个用于自动验证图像分类神经网络安全性的框架.运用故障安全轨迹规划中的凸优化技术解决预测转向角的判断问题,然后拓展DLV来实现无人驾驶汽车转向角安全性的验证.在NVIDIA的端到端无人驾驶架构上说明所提出方法的优势,该架构是许多现代无人驾驶汽车的关键组成部分.实验结果表明:对于给定的区域和操作集,如果存在对抗性错误分类(即不正确的转向决策),该技术可以成功地找到,因此可以实现安全验证(如果在所有DNN层都没有发现错误分类,在这种情况下,网络关于转向决策可以说是稳定或可靠的)或证伪(在这种情况下,这些对抗性反例可以用于后续微调网络).
2023, 34(6):2606-2627. DOI: 10.13328/j.cnki.jos.006850
摘要:软件在国民经济的各个领域占据越来越重要的地位.万物互联的大背景下,信息之间的交互、分析、协同变得越来越普遍,程序/软件之间的依赖关系逐渐增多,这使得人们对系统可靠性和健壮性提出了更高的要求.由开源组件和第三方组件构成的软件供应链,其所面临的安全问题近年来成为了学术界和工业界共同关注的焦点.库函数作为开源软件的重要组成部分,与软件供应链安全有着密切的联系.为了提高软件开发效率,软件库或应用程序编程接口(API)在程序编写过程中会被频繁使用,但库函数中存在的错误或漏洞可能会被攻击者利用,从而损害软件供应链安全.这些错误或漏洞往往与库函数中存在的异常有关,因此,从精度和效率两方面对适用于库函数的异常分析方法进行总结归纳,对于每种异常分析方法的基本思想和重要过程进行阐述,并针对库函数异常分析面临的挑战给出初步解决思路.对软件供应链中的库函数进行异常分析,有助于增强软件系统的健壮性,进而保障软件供应链的安全.
2023, 34(6):2628-2640. DOI: 10.13328/j.cnki.jos.006852
摘要:随着开源软件技术的不断发展,为提高开发效率并降低人力成本,组件化开发模式逐渐得到行业的认可,开发人员可以利用相关工具便捷地使用第三方组件,也可将自己开发的组件贡献给开发社区,从而形成了软件供应链.然而,这种开发模式必然会导致高危漏洞随组件之间的依赖链条扩散到其他组件或项目,从而造成漏洞影响的扩大化.例如2021年底披露的Log4j2漏洞,通过软件供应链对Java生态安全造成了巨大影响.当前,针对Java语言软件供应链安全的分析与研究大多是对组件或项目进行抽样调研,这忽略了组件或项目对整个开源生态的影响,无法精准衡量其对生态所产生的影响.为此,针对Java语言生态软件供应链安全分析技术展开研究,首次给出了软件供应链安全领域的组件依赖关系和影响力等重要指标的形式化定义,并据此提出了基于索引文件的增量式组件配置收集和基于POM语义的多核并行依赖解析,设计实现了Java开源生态组件依赖关系提取与解析框架,收集并提取超过880万个组件版本和6 500万条依赖关系.在此基础上,以受到漏洞影响的日志库Log4j2为例,全面评估其对生态的影响以及修复比例.结果表明:该漏洞影响了生态15.12%的组件(71 082个)以及16.87%的组件版本(1 488 971个),同时,仅有29.13%的组件在最新版本中进行了修复.
2023, 34(6):2641-2668. DOI: 10.13328/j.cnki.jos.006847
摘要:随着攻击技术的不断演进,防御的难度也与日俱增.为了及时、有效地识别和阻断攻击的实施,学术界与工业界已提出众多基于攻击检测的防御技术.现有的攻击检测方法主要着眼于攻击事件,通过识别攻击特征或者定位异常活动来发现攻击,分别具有泛化性和攻击导向性不足的局限性,容易被攻击者精心构造的攻击变种绕过,造成漏报和误报.然而,根据观察发现:尽管攻击及其变种可能采用众多不同的攻击机制来绕过一些防御措施,以实现同一攻击目的,但是由于攻击目的不变,这些攻击对系统的影响依然具有相似性,因此,所造成的系统影响并不会随攻击手段的大量增多而随之产生对应的增长.针对这一特点,提出了基于攻击指标依赖模型的攻击检测方法,以更有效地应对攻击变种.所提出的指标依赖模型着眼于漏洞利用后对系统的影响而非变化多样的攻击行为,因此具有更强的泛化能力.基于模型指导,进一步采用多层次监控技术,以迅速捕获定位攻击迹,最终实现对目标攻击与变种的精确检测,有效降低攻击检测的误报率.在DARPA透明计算项目以及典型APT攻击组成的测试集上,与现有的基于攻击事件分析的检测方法进行实验对比,结果表明:在预设场景下,所提出的方法可以根据可接受的性能损耗实现99.30%的检出率.
2023, 34(6):2669-2689. DOI: 10.13328/j.cnki.jos.006495
摘要:异构缺陷预测(heterogeneous defect prediction,HDP)在具有异构特征的项目间进行缺陷预测,可以有效解决源项目和目标项目使用了不同特征的问题.当前大多数HDP方法都是通过学习域不变特征子空间以减少域之间的差异来解决异构特征问题.但是,源域和目标域通常呈现出巨大的异质性,使得域对齐效果并不好.究其原因,这些方法都忽视了分类器对于两个域中的同一类别应产生相似的分类概率分布这一潜在知识,没有挖掘数据中包含的内在语义信息.另一方面,由于在新启动项目或历史遗留项目中搜集训练数据依赖于专家知识,费时费力且容易出错,探究了基于目标项目内少数标记模块来进行异构缺陷预测的可能性.鉴于此,提出一种基于同步语义对齐的异构缺陷预测方法(SHSSAN).一方面,探索从标记的源项目中学到的隐性知识,从而在类别之间传递相关性,达到隐式语义信息迁移.另一方面,为了学习未标记目标数据的语义表示,通过目标伪标签进行质心匹配达到显式语义对齐.同时,SHSSAN可以有效解决异构缺陷数据集中常见的类不平衡和数据线性不可分问题,并充分利用目标项目中的标签信息.对包含30个不同项目的公共异构数据集进行的实验表明,与目前表现优异的CTKCCA、CLSUP、MSMDA、KSETE和CDAA方法相比,在F-measure和AUC上分别提升了6.96%、19.68%、19.43%、13.55%、9.32%和2.02%、3.62%、2.96%、3.48%、2.47%.
2023, 34(6):2690-2707. DOI: 10.13328/j.cnki.jos.006498
摘要:在软件开发中,错误定位是修复软件缺陷的必要前提.为此,研究者们提出了一系列自动化的错误定位方法.这些方法利用了测试用例运行时的覆盖路径和运行结果等信息,大幅减少了定位错误代码的难度.在竞争性众包软件开发中,往往存在多个竞争性实现(解决方案),提出一种专门面向众包软件工程的错误定位方法.主要思想是,在定位错误语句时,将其多个竞争性实现作为参考程序.针对程序中的各个语句,在参考程序中搜索参考语句,并利用参考语句计算其错误概率.给定一个错误程序和相应的测试用例,首先运行测试用例并使用广泛流行的基于频谱的错误定位方法计算其初始错误概率.然后,根据此语句与其参考语句的相似性调整错误概率.在118个真实的错误程序上进行实验,结果表明所提方法相比基于频谱的方法,定位错误的成本降低了25%以上.
2023, 34(6):2708-2726. DOI: 10.13328/j.cnki.jos.006506
摘要:在软件交付越来越强调迅速、可靠的当下,持续集成成为一项备受关注的技术.开发人员不断将工作副本集成到代码主干完成软件演化,每次集成会通过自动构建测试来验证代码更新是否引入错误.但随着软件规模的增大,测试用例集包含的测试用例越来越多,测试用例的覆盖范围、检错效果等特征也随着集成周期的延长而变化,传统的测试用例排序技术难以适用.基于强化学习的测试排序技术可以根据测试反馈动态调整排序策略,但现有的相关技术不能综合考虑测试用例集中的信息进行排序,这限制了它们的性能.提出一种新的基于强化学习的持续集成环境中测试用例排序方法——指针排序方法:方法使用测试用例的历史信息等特征作为输入,在每个集成周期中,智能体利用指针注意力机制获得对所有备选测试用例的关注程度,由此得到排序结果,并从测试执行的反馈得到策略更新的方向,在“排序-运行测试-反馈”的过程中不断调整排序策略,最终达到良好的排序性能.在5个规模较大的数据集上验证了所提方法的效果,并探究了使用的历史信息长度对方法性能的影响,方法在仅含回归测试用例的数据集上的排序效果,以及方法的执行效率.最后,得到如下结论:(1)与现有方法相比,指针排序方法能够随着软件版本的演化调整排序策略,在持续集成环境下有效地提升测试序列的检错能力.(2)指针排序方法对输入的历史信息长度有较好的鲁棒性,少量的历史信息即可使其达到最优效果.(3)指针排序方法能够很好地处理回归测试用例和新增测试用例.(4)指针排序方法的时间开销不大,结合其更好、更稳定的排序性能,可以认为指针排序方法是一个非常有竞争力的方法.
2023, 34(6):2727-2748. DOI: 10.13328/j.cnki.jos.006508
摘要:随着互联网和面向服务技术的发展,一种新型的Web应用——Mashup服务,开始在互联网上流行并快速增长.如何在众多Mashup服务中找到高质量的服务,已经成为一个大家关注的热点问题.寻找功能相似的服务并进行聚类,能有效提升服务发现的精度与效率.目前国内外主流方法为挖掘Mashup服务中隐含的功能信息,进一步采用特定聚类算法如K-means等进行聚类.然而Mashup服务文档通常为短文本,基于传统的挖掘算法如LDA无法有效处理短文本,导致聚类效果并不理想.针对这一问题,提出一种基于非负矩阵分解的TWE-NMF (non-negative matrix factorization combining tags and word embedding)模型对Mashup服务进行主题建模.所提方法首先对Mashup服务规范化处理,其次采用一种基于改进的Gibbs采样的狄利克雷过程混合模型,自动估算主题的数量,随后将词嵌入和服务标签等信息与非负矩阵分解相结合,求解Mashup服务主题特征,并通过谱聚类算法将服务聚类.最后,对所提方法的性能进行了综合评价,实验结果表明,与现有的服务聚类方法相比,所提方法在准确率、召回率、F-measure、纯度和熵等评价指标方面都有显著提高.
2023, 34(6):2749-2764. DOI: 10.13328/j.cnki.jos.006486
摘要:网络表示学习被认为是提高信息网络分析效率的关键技术之一,旨在将网络中每个节点映射为低维隐空间中的向量表示,并使这些向量高效的保持原网络的结构和特性.近年来,大量研究致力于网络拓扑和节点属性的深度挖掘,并在一些网络分析任务中取得了良好应用效果.事实上,在这两类关键信息之外,真实网络中广泛存在的伴随信息,反映了网络中复杂微妙的各种关系,对网络的形成和演化起着重要作用.为提高网络表示学习的有效性,提出了一种能够融合伴随信息的网络表示学习模型NRLIAI.该模型以变分自编码器(VAE)作为信息传播和处理的框架,在编码器中利用图卷积算子进行网络拓扑和节点属性的聚合与映射,在解码器中完成网络的重构,并融合伴随信息对网络表示学习过程进行指导.该模型克服了现有方法无法有效利用伴随信息的缺点,同时具有一定的生成能力,能减轻表示学习过程中的过拟合问题.在真实网络数据集上,通过节点分类和链路预测任务对NRLIAI模型与几种现有方法进行了对比实验,实验结果验证了该模型的有效性.
2023, 34(6):2765-2775. DOI: 10.13328/j.cnki.jos.006489
摘要:基于模型的强化学习方法利用已收集的样本对环境进行建模并使用构建的环境模型生成虚拟样本以辅助训练,因而有望提高样本效率.但由于训练样本不足等问题,构建的环境模型往往是不精确的,其生成的样本也会因携带的预测误差而对训练过程产生干扰.针对这一问题,提出了一种可学习的样本加权机制,通过对生成样本重加权以减少它们对训练过程的负面影响.该影响的量化方法为,先使用待评估样本更新价值和策略网络,再在真实样本上计算更新前后的损失值,使用损失值的变化量来衡量待评估样本对训练过程的影响.实验结果表明,按照该加权机制设计的强化学习算法在多个任务上均优于现有的基于模型和无模型的算法.
2023, 34(6):2776-2788. DOI: 10.13328/j.cnki.jos.006509
摘要:高质量的特征表示可以提高目标检测和其他计算机视觉任务的性能.现代目标检测器诉诸于通用的特征金字塔结构以丰富表示能力,但是他们忽略了对于不同方向的路径应当使用不同的融合操作,以满足其对信息流的不同需求.提出了分离式空间语义融合(separated spatial semantic fusion,SSSF),它在自上而下的路径中使用通道注意模块(channel attention block,CAB)来传递语义信息,在自下而上的路径中使用具有瓶颈结构的空间注意模块(spatial attention block,SAB)来通过较少的参数和较少的计算量(相比于直接利用不降维的空间注意模块)将精确的位置信号传递到顶层.SSSF十分有效,并且具有很强大的泛化能力:对于目标检测,它可以将AP提高1.3%以上,对于自上而下的路径进行语义分割的融合操作,它可以将普通加和版本的AP提高约0.8%,对于实例分割,所提方法能够在所有指标上提高实例分割的包围框AP和掩膜AP.
2023, 34(6):2789-2803. DOI: 10.13328/j.cnki.jos.006492
摘要:移动对象连续k近邻(CKNN)查询是指给定一个连续移动的对象集合,对于任意一个k近邻查询q,实时计算查询q的k近邻并在查询有效时间内对查询结果进行实时更新.现实生活中,交通出行、社交网络、电子商务等领域许多基于位置的应用服务都涉及移动对象连续k近邻查询这一基础问题.已有研究工作解决连续k近邻查询问题时,大多需要通过多次迭代确定一个包含k近邻的查询范围,而每次迭代需要根据移动对象的位置计算当前查询范围内移动对象的数量,整个迭代过程的计算代价占查询代价的很大部分.为此,提出了一种基于网络索引和混合高斯函数移动对象分布密度的双重索引结构(grid GMM index,GGI),并设计了移动对象连续k近邻增量查询算法(incremental search for continuous k nearest neighbors,IS-CKNN).GGI索引结构的底层采用网格索引对海量移动对象进行维护,上层构建混合高斯模型模拟移动对象在二维空间中的分布.对于给定的k近邻查询q,IS-CKNN算法能够基于混合高斯模型直接确定一个包含q的k近邻的查询区域,减少了已有算法求解该区域的多次迭代过程;当移动对象和查询q位置发生变化时,进一步提出一种高效的增量查询策略,能够最大限度地利用已有查询结果减少当前查询的计算量.最后,在滴滴成都网约车数据集以及两个模拟数据集上进行大量实验,充分验证了算法的性能.
2023, 34(6):2804-2832. DOI: 10.13328/j.cnki.jos.006496
摘要:垂直数据分区技术从逻辑上将满足一定语义条件的数据库表属性存放在同一个物理块中,进而降低数据访问成本,提高查询效率.数据库查询负载中的每条查询通常只与数据库表中的部分属性有关,因此只需使用数据库表的某个属性子集便可以得到准确的查询结果.合理的垂直数据分区方式可以使大多数查询负载不需要扫描完整数据库就可以完成查询任务,从而达到减少数据访问量,提高查询处理效率的目的.传统的数据库垂直分区方法主要基于专家设置的启发式规则,分区策略粒度较粗,且不能根据负载的特征进行有针对性的分区优化.同时,当负载规模较大或者属性个数较多时,现有垂直分区方法执行时间过长,尤其无法满足数据库在线实时调优的性能需求.为此,提出在线环境下基于谱聚类的垂直数据分区方法(spectral clustering based vertical partitioning,SCVP),采用分阶段求解的思想,减少算法时间复杂度,加快分区执行速度.首先通过增加约束条件缩小解空间(即根据谱聚类生成初始分区),然后对解空间设计算法进行精细的搜索(即采用频繁项集和贪心搜索相结合的策略对初始分区进行优化).为了进一步提升SCVP在高维属性下的性能,提出了SCVP的改进版本SCVP-R (spectral clustering based vertical partitioning redesign).SCVP-R通过引入同域竞争机制、双败淘汰机制和循环机制,对SCVP在分区优化过程中的合并方案进行了进一步优化.在不同数据集上的实验结果表明,相比于目前最好的垂直分区方法,SCVP和SCVP-R有着更快的执行时间和更好的性能表现.
2023, 34(6):2833-2864. DOI: 10.13328/j.cnki.jos.006658
摘要:随着数据孤岛现象的出现和个人隐私保护的重视,集中学习的应用模式受到制约,而联邦学习作为一个分布式机器学习框架,可以在不泄露用户数据的前提下完成模型训练,从诞生之初就备受关注.伴随着联邦学习应用的推广,其安全性和隐私保护能力也开始受到质疑.对近年来国内外学者在联邦学习模型安全与隐私的研究成果进行了系统总结与分析.首先,介绍联邦学习的背景知识,明确其定义和工作流程,并分析存在的脆弱点.其次,分别对联邦学习存在的安全威胁和隐私风险进行系统分析和对比,并归纳总结现有的防护手段.最后,展望未来的研究挑战和方向.
2023, 34(6):2865-2877. DOI: 10.13328/j.cnki.jos.006494
摘要:软件定义网络(SDN)是一种将控制与转发平面分离的新型网络架构,可以基于全局信息进行网络资源的调度和优化,而精确的调度需要对全网信息(包括网络中所有交换设备状态及拓扑中所有链路信息)进行准确的测量.带内网络遥测可以在转发数据包的同时实现相关信息的采集,其中配置全网覆盖的探测路径是带内网络遥测需要解决的关键问题之一.但现有SDN网络中全网覆盖的带内网络遥测路径配置方案存在以下问题:(1)需要提前部署大量探测节点导致维护开销增大;(2)探测路径过长导致探测分组长度超过网络中的MTU值;(3)冗余的探测路径导致测量引入的流量负荷在网络整体流量中占比过大;(4)动态变化拓扑下探测路径调整恢复时间长等.为解决上述问题,提出了SDN中基于图分割的自适应带内网络遥测探测路径配置(ACGS)方法,其基本思想是:利用图分割对网络拓扑图进行划分,通过控制拓扑规模来限制探测路径长度;在分割后的子图中求解欧拉回路得到只遍历子图中有向边一次的探测路径,以避免探测节点数量过多、探测路径冗余度高的问题;并利用局部调整与整体调整相结合的方式解决拓扑动态变化时探测路径恢复时间长的问题.实验结果证明ACGS方法能够在SDN网络环境下,实现探测路径长度适中、探测节点数量较少、探测路径冗余程度更低的全网覆盖带内网络遥测探测路径配置,并实现其在拓扑动态变化后更快速的调整.
2023, 34(6):2878-2891. DOI: 10.13328/j.cnki.jos.006504
摘要:分层量子密钥分发在量子通信中有重要作用,除了使用EPR与GHZ态可实现分层量子密钥分发,非对称高维多粒子纠缠也为解决分层量子密钥分发提供了一种新思路,这种方法在量子信道使用次数上比传统的使用二部链路的量子密钥分发更有效.介绍了3用户在同构意义下的5种分层密钥结构,并给出4、5用户的可分区分层密钥结构.然后对于所介绍的各类分层密钥结构,通过将上述两种方法进行对比,得到实现各类密钥结构理想化密钥率最高的方案.当量子网络用户大于3且密钥结构可分区时,证明仅使用EPR与GHZ态就可实现各层理想化密钥率是1,并以4、5用户的可分区分层密钥结构为例展开说明.
2023, 34(6):2892-2905. DOI: 10.13328/j.cnki.jos.006516
摘要:斯诺登事件揭露了某些密码体制的确存在被颠覆的事实.椭圆曲线数字签名算法(elliptic curve digital signature algorithm,ECDSA)在同等安全强度下,因其签名长度短而被广泛应用,如被用于比特币交易单的签名.ECDSA签名算法是否会被颠覆且存在修复方法仍是一个挑战.正面回答了这一问题:首先利用伪随机函数(pseudorandom function,PRF)计算$\widetilde k$替换ECDSA签名中使用的随机数k,实现了对ECDSA签名的颠覆,使得敌手只需获得至多3个连续签名就能够提取出签名私钥;然后,将签名私钥、签名消息与其他随机签名组件的哈希值作为签名算法的第2个随机数,对ECDSA签名进行了改进,提出了抗颠覆攻击的ECDSA签名,即使敌手替换新签名算法的某个组件,也无法提取签名私钥的任何信息;最后,对提出的算法与已有算法进行了效率测试,实验结果证明了提出的算法在计算复杂度与算法执行效率方面都具备优势.
2023, 34(6):2906-2921. DOI: 10.13328/j.cnki.jos.006493
摘要:近年来,与二阶段实例分割方法相比,单阶段实例分割方法由于实时性强,已在实际应用中取得了初步进展,但目前仍然存在以下两个主要缺点.(1)精度较低:单阶段方法缺少多轮优化环节,因此其精度离实际应用仍存在差距;(2)不够灵活:目前大多数单阶段方法是独立设计的,难以兼容实际应用中不同类型的物体检测框架,因此适用范围相对有限.提出了一种精确且灵活的单阶段实例分割框架——网格实例分割方法(GridMask),其中两个关键步骤如下:(1)为了提高实例分割精度,提出了一种网格切分二值化算法,将物体边界框内的区域划分为多个独立的网格,然后在每个网格上进行实例分割.该步骤将物体分割任务简化成了多个网格切片的分割,有效降低了特征表示的复杂程度,进而提高了实例分割的精度;(2)为了兼容不同的物体检测方法,设计了一个可以即插即用的子网络模块.该模块可以无缝地接入到目前大多数主流物体检测框架中,以增强这些方法的分割性能.所提方法在公共数据集MS COCO上取得了出色的性能,优于现有的大部分单阶段方法,甚至一些二阶段方法.
2023, 34(6):2922-2941. DOI: 10.13328/j.cnki.jos.006497
摘要:面部动作单元分析旨在识别人脸图像每个面部动作单元的状态,可以应用于测谎,自动驾驶和智能医疗等场景.近年来,随着深度学习在计算机视觉领域的普及,面部动作单元分析逐渐成为人们关注的热点.面部动作单元分析可以分为面部动作单元检测和面部动作单元强度预测两个不同的任务,然而现有的主流算法通常只针对其中一个问题.更重要的是,这些方法通常只专注于设计更复杂的特征提取模型,却忽略了面部动作单元之间的语义相关性.面部动作单元之间往往存在着很强的相互关系,有效利用这些语义知识进行学习和推理是面部动作单元分析任务的关键.因此,通过分析不同人脸面部行为中面部动作单元之间的共生性和互斥性构建了基于面部动作单元关系的知识图谱,并基于此提出基于语义关系的表征学习算法(semantic relationship embedded representation learning,SRERL).在现有公开的面部动作单元检测数据集(BP4D、DISFA)和面部动作单元强度预测数据集(FERA2015、DISFA)上,SRERL算法均超越现有最优的算法.更进一步地,在BP4D+数据集上进行泛化性能测试和在BP4D数据集上进行遮挡测试,同样取得当前最优的性能.
2023, 34(6):2942-2958. DOI: 10.13328/j.cnki.jos.006512
摘要:现存的图像去噪算法在处理加性高斯白噪声上已经取得令人满意的效果,然而其在未知噪声强度的真实噪声图像上泛化性能较差.鉴于深度卷积神经网络极大地促进了图像盲去噪技术的发展,针对真实噪声图像提出一种基于自监督约束的双尺度真实图像盲去噪算法.首先,所提算法借助小尺度网络分支得到的初步去噪结果为大尺度分支的图像去噪提供额外的有用信息,以帮助后者实现良好的去噪效果.其次,用于去噪的网络模型由噪声估计子网络和图像非盲去噪子网络构成,其中噪声估计子网络用于预测输入图像的噪声强度,非盲去噪子网络则在所预测的噪声强度指导下进行图像去噪.鉴于真实噪声图像通常缺少对应的清晰图像作为标签,提出了一种基于全变分先验的边缘保持自监督约束和一个基于图像背景一致性的背景自监督约束,前者可通过调节平滑参数将网络泛化到不同的真实噪声数据集上并取得良好的无监督去噪效果,后者则可借助多尺度高斯模糊图像之间的差异信息辅助双尺度网络完成去噪.此外,还提出一种新颖的结构相似性注意力机制,用于引导网络关注图像中微小的结构细节,以便复原出纹理细节更加清晰的真实去噪图像.相关实验结果表明在SIDD,DND和Nam这3个真实基准数据集上,所提的基于自监督的双尺度盲去噪算法无论在视觉效果上还是在量化指标上均优于多种有监督图像去噪方法,且泛化性能也得到了较为明显的提升.
2023, 34(6):2959-2978. DOI: 10.13328/j.cnki.jos.006507
摘要:云计算作为一种新型高价值计算系统,目前被广泛应用于各行业领域;等保2.0中也提出了对其应用主动免疫可信计算技术进行动态可信验证的要求.云计算模式下,虚拟机作为用户使用云服务的直接载体,其可信启动是虚拟机运行环境可信的基础.但由于虚拟机以进程的形式运行在物理节点上,其启动过程呈现出高动态性,且多虚拟机域间存在非预期干扰等特点;而现有的虚拟机可信启动方案存在虚拟机启动过程的动态防护性不足、缺乏多虚拟域间非预期干扰性排除等问题.针对上述问题,提出一种基于无干扰理论的虚拟机可信启动研究方案.首先,基于无干扰理论,提出了虚拟机进程的运行时可信定理;进一步地,给出了虚拟机可信启动的定义并证明了虚拟机可信启动判定定理.其次,依据虚拟机可信启动判定定理,基于系统调用设计监测控制逻辑,对虚拟机启动过程进行主动动态度量与主动控制.实验结果表明所提方案能够有效排除复杂云环境下多虚拟机间非预期干扰,保证虚拟机启动过程的动态可信性,且性能开销较小.