📄 论文总结
基于代码风格计量学的大语言模型JavaScript代码溯源研究 / Tracing LLM-Generated JavaScript Code via Code Stylometry
1️⃣ 一句话总结
本研究首次大规模探索了LLM生成的JavaScript代码是否可溯源至特定模型,通过构建LLM-NodeJS数据集和开发CodeT5-JSA定制架构,实现了可靠的作者归属和模型指纹识别。
2️⃣ 论文创新点
1. LLM-NodeJS数据集构建
- 创新点:创建了包含20个LLM生成的5万个Node.js后端程序的数据集,每个程序含4种变体,共25万个JavaScript样本,并提供JSIR和AST两种附加表示形式
- 区别/改进:解决了现有研究仅使用单一或少量模型代表AI生成类别的问题,为大规模模型指纹研究提供数据基础
- 意义:支持多样化的研究应用,提升了代码归属方法的鲁棒性和可扩展性
2. CodeT5-JSA定制架构
- 创新点:基于770M参数CodeT5模型开发的定制架构,移除解码器并修改分类头,专门用于JavaScript代码作者归属任务
- 区别/改进:在5类、10类和20类作者归属任务中分别达到95.8%、94.6%和88.5%的准确率,超越BERT、CodeBERT和Longformer等模型
- 意义:证明了Transformer编码器在代码风格分析中的有效性,为LLM生成的代码提供高精度溯源能力
3. 深层结构特征依赖
- 创新点:发现分类器捕获的是程序数据流和结构的深层风格规律,而非表面特征,故在代码混淆和变换后仍有效
- 区别/改进:突破了先前工作中对浅层风格特征的依赖,通过AST结构和数据流图等深层结构信号实现更鲁棒的归属
- 意义:增强了方法在实际应用中的可靠性,特别是在对抗性代码变换场景下
3️⃣ 主要结果与价值
结果亮点
- 在5类作者归属任务中,BERT模型在区分不同模型家族时达到97.9%的准确率
- 同一模型家族内(GPT变体)的五分类归属任务中,BERT模型仍能达到90.2%的准确率
- 在代码混淆、压缩等变体下,分类器仍保持较高准确率,证明依赖的是深层结构特征
- 数据流相似性在区分模型生成代码方面最具判别力,比表面级N-gram和语法匹配更抗干扰
实际价值
- 为AI代码溯源在漏洞检测、恶意内容标记和问责中的关键作用提供技术支持
- 在软件工程安全领域,可用于检测和追踪AI生成的潜在恶意代码
- 为代码版权保护和知识产权验证提供新方法
- 支持编译后二进制代码的去匿名化,在安全领域具有重要应用价值
4️⃣ 术语表
- LLM-NodeJS:包含20个大语言模型生成的5万个Node.js后端程序的数据集,每个程序有4种变体,共25万个JavaScript样本,并提供JSIR和AST两种表示形式
- CodeT5-JSA:基于770M参数CodeT5模型的定制架构,移除解码器并修改分类头,专门用于JavaScript代码作者归属任务
- JSIR:JavaScript中间表示,用于程序分析和归属任务的中间格式
- CodeBLEU:用于评估代码相似性的指标,包含N-gram匹配、语法匹配和数据流匹配三个组件
- 数据流匹配:CodeBLEU的一个组件,通过变量依赖和数据/控制流量化代码的语义重叠
- Authorship Attribution:作者归属识别,通过分析代码特征来确定代码作者身份的技术
- Code Stylometry:代码风格计量学,通过量化分析编程风格特征来进行代码分析的方法