-
公开(公告)号:CN115098109B
公开(公告)日:2024-11-22
申请号:CN202210726119.1
申请日:2022-06-24
Applicant: 南京邮电大学
IPC: G06F8/41
Abstract: 一种基于有向图的代码仓库代码块级别冲突排序分组方法,首先提取出发生冲突的文件列表、冲突文件内部的方法名称以及冲突代码片段的信息进行保存;然后对不同分支上的冲突文件内部的所有方法构造出依赖关系图;其次对比依赖关系图中的节点,将不同分支上构造出的依赖关系图进行合并;接着遍历依赖关系图,将节点携带的文件全路径名、方法名称、方法开始和结束的行号与保存对比,将符合条件的冲突文件全路径名、方法名称按照节点序号从大到小进行保存;最后将处在同一个依赖关系图中的冲突方法分入到同一分组。本方法能够有效地针对当前代码仓库存在的代码块级别进行排序,同时对代码块级别的冲突进行有效的分组从而帮助开发人员有序的解决冲突。
-
公开(公告)号:CN114238078B
公开(公告)日:2024-11-08
申请号:CN202111392045.4
申请日:2021-11-23
Applicant: 南京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于高阶函数的程序间依赖关系抽取方法,首先对程序进行预处理,构建程序的过程调用图,对过程调用图中的节点进行遍历,确定子过程的分析顺序;获取各个被调用子过程内的语句和变量间的依赖关系,用高阶函数的形式保存摘要信息;根据生成的高阶函数式函数摘要,在过程调用点处对函数摘要的函数参数进行相应值或者函数代入,获取过程间由于过程调用和参数传递产生的依赖关系。本发明通过高阶函数特性获取过程内的依赖关系,生成高阶函数形式表示的函数摘要,可方便过程间调用时在调用点处按需完成函数摘要中高阶函数参数的代入,快速获取形参与实参之间的依赖关系,有效提升了程序间依赖关系的抽取效率。
-
公开(公告)号:CN114996149B
公开(公告)日:2024-05-28
申请号:CN202210682893.7
申请日:2022-06-16
Applicant: 南京邮电大学
IPC: G06F11/36 , G06F8/41 , G06F18/2113 , G06F18/214 , G06F18/2415 , G06N20/20
Abstract: 本发明公开了一种基于程序切片度量的代码缺陷预测方法,其包括:对不同编程语言转化成中间语言LLVM IR,对可能存在缺陷的代码关键点生成相应的前向切片和后向切片,构建基于前向切片和后向切片的认知复杂度度量指标和其他切片度量指标,并结合传统的度量指标,通过机器学习模型XGboost进行监督学习训练,最终训练好的模型可以预测代码是否存在缺陷,结合新的切片度量指标可以捕获与程序行为相关的缺陷,比只使用传统度量进行缺陷预测的准确率高。
-
公开(公告)号:CN117912545A
公开(公告)日:2024-04-19
申请号:CN202410010427.3
申请日:2024-01-04
Applicant: 南京邮电大学
IPC: G16B15/30 , G16B40/00 , G06F18/25 , G06N3/042 , G06N3/0455 , G06N3/0464 , G06N3/0499 , G06N3/08
Abstract: 本发明公开了一种基于跨通道融合的多模态蛋白质‑配体结合亲和力预测方法,旨在提高蛋白质‑配体结合亲和力的预测性能。具体包括:构建蛋白质‑配体复合物结构和亲和力标签;数据预处理,提取残基序列,构建蛋白质口袋残基图、配体分子图和口袋残基‑配体原子相互作用图;生成相应的输入特征,并进行特征提取;融合所有模块的输出生成复合体的向量表示;通过全连接层来预测结合亲和力。值得注意,本发明通过GNN和Transformer的联合框架表征蛋白质口袋和配体分子,解决了GNN的消息传递局部性限制,为节点提供了全局视野。此外,通过残基序列的全局表示与口袋、配体间交互的建模,赋予模型捕获长程相互作用的能力。
-
公开(公告)号:CN117891494A
公开(公告)日:2024-04-16
申请号:CN202410063642.X
申请日:2024-01-17
Applicant: 南京邮电大学
Abstract: 本发明的主要工作是一种针对版本控制系统重命名冲突的自动处理方法。首先,本发明关注的是版本控制系统合并分支时出现的重命名冲突,对合并时由于重命名引起的冲突进行收集。其次,对于收集到的冲突,提取冲突的内容、解决方案以及上下文信息,得到数据集。然后用得到的数据集微调大语言模型。最后,通过大语言模型生成冲突解决方案以供开发人员分析。
-
公开(公告)号:CN116881907A
公开(公告)日:2023-10-13
申请号:CN202310829695.3
申请日:2023-07-07
Applicant: 南京邮电大学
Abstract: 本发明公开了一种基于数据流分析的动静态ANDROID隐私泄露检测方法及系统,遍历目标应用程序的源代码来标记源点与汇点。根据源与汇列表进行静态污点分析,得到潜在隐私泄露数据流。根据潜在泄露数据流中的每一个汇点,以及应用程序的动态执行结果,生成相应切片准则,进行数次后向切片。遍历切片生成的代码片段,检查源点是否被调用。本发明在上述过程中,对数据流是否为假阳性进行判定。相比于传统的污点分析方法,本发明引入动态程序切片对数据流进行二次分析,能够提取应用程序真实的执行轨迹,并且通过静态污点分析,去除了大量源与汇的冗余信息,在较少的系统开销下有效地降低了结果输出的假阳率。
-
公开(公告)号:CN116861378A
公开(公告)日:2023-10-10
申请号:CN202310718912.1
申请日:2023-06-16
Applicant: 南京邮电大学
Abstract: 本发明公开了一种用于代码溯源的程序水印嵌入和提取方法及系统,包括:由源代码构建函数调用图;按照逆拓扑排序遍历函数调用图,将存在调用关系的函数划分为一个代码块并对每一个代码块进行信息流分析得到代码块中的信息流关系;构建源程序的代码属性图;根据代码块中的信息流关系和代码属性图形成程序联合属性图;对程序联合属性图中变量节点的关系边数进行计算并选取关键节点;根据关键节点和用户身份信息嵌入水印;将关键节点作为依据进行双向程序切片,并根据水印提取规则提取水印。本发明不仅可减小水印损失的风险,还可加强水印与源代码间的依赖并提高隐蔽性,降低在静态分析中被发现的风险,无需依赖源代码也能提取到水印信息。
-
公开(公告)号:CN115794120B
公开(公告)日:2023-07-04
申请号:CN202310064888.4
申请日:2023-02-06
Applicant: 南京邮电大学
Abstract: 本发明公开了一种基于高阶函数的动态程序依赖簇检测方法包括:用符号执行工具获取程序在给定输入条件下的语句执行历史和函数调用关系,根据实际的调用关系构建简化的函数调用图,根据语句执行历史动态获取过程内的依赖簇信息,采用高阶函数的形式构建函数摘要,根据指令索引进行基本块的遍历和指令动态引用集的计算;利用过程内高阶函数形式的摘要,在调用点处对摘要的参数进行相应代入,获取过程间的依赖簇信息,最后将计算得到依赖簇信息进行汇总,获取给定输入条件下相互依赖的程序语句,从而进行动态程序依赖簇检测。
-
公开(公告)号:CN112800394B
公开(公告)日:2022-10-25
申请号:CN202110094622.5
申请日:2021-01-25
Applicant: 南京邮电大学
Abstract: 本发明提供了一种基于聚类加权多维桶分组的安全数据库水印构造方法,选取适当的抽象域,利用抽象域生成的不变式表示数据库的稳定单元,通过多维桶分组技术对数据库进行分组,根据分组后的稳定单元和提取出不变属性构造出安全的数据库水印;具体包括根据抽象域选取数据库稳定单元和属性步骤;数据聚类步骤;构建加权多维桶分组步骤;构造安全数据库水印步骤;本发明采用加权多维桶分组,提高了数据质量同时保护了敏感属性的隐私性,使攻击者难以获取到敏感信息,进而提高了水印的鲁棒性;针对不同的场景计算出的敏感属性的权值可能不同,提高了用户的可用性,扩大了水印的应用场景,同时不对原始数据进行修改,确保数据不会失真。
-
公开(公告)号:CN115168192A
公开(公告)日:2022-10-11
申请号:CN202210719595.0
申请日:2022-06-23
Applicant: 南京邮电大学
Abstract: 一种基于提交历史信息的学生作业批改方法,首先对提交历史信息进行处理,提取学生最新和最初的代码变化,提取参考程序每次的提交消息以及代码变化,对学生以及参考程序提取出的代码变化进行分割,建立代码变化片段;接着查找学生程序和参考程序之间可能与之匹配的代码变化片段,找到之后计算相似度,建立相似度集合;接着采用二分图的最大权重算法找出最佳匹配代码片段;接着对匹配的代码片段对应的提交消息进行文本相似度计算;最后按照比例对代码片段和对应消息的相似度进行整合。
-
-
-
-
-
-
-
-
-