首页
/ John the Ripper中Axcrypt格式性能基准测试优化分析

John the Ripper中Axcrypt格式性能基准测试优化分析

2025-05-21 21:16:55作者:宣海椒Queenly

背景概述

John the Ripper作为一款知名的密码安全评估工具,支持多种加密格式的哈希值分析。近期开发团队发现其Axcrypt相关格式的基准测试存在速度混合问题,这影响了性能评估的准确性。本文将深入分析这一问题及其解决方案。

问题发现

在John the Ripper的基准测试中,Axcrypt相关格式显示出混合速度现象。具体表现为:

  • CPU格式(AxCrypt)使用PBKDF2-SHA512/SHA1算法,测试了1337和60000两种迭代次数
  • OpenCL格式(axcrypt-opencl)使用SHA1 AES算法,同样测试1337和60000迭代
  • AxCrypt 2.x OpenCL格式则测试28200和23652两种迭代次数

这种不一致的测试参数使得不同格式间的性能比较变得困难,也影响了用户对实际分析速度的预期。

技术分析

Axcrypt加密机制

Axcrypt采用多层加密保护:

  1. 第一层使用PBKDF2密钥派生函数,早期版本使用SHA1,新版使用SHA512
  2. 第二层使用AES对称加密算法保护实际数据
  3. 迭代次数是影响分析速度的关键因素

基准测试问题

当前实现存在两个主要问题:

  1. 测试参数不一致 - 不同格式使用不同的迭代次数,无法直接比较
  2. 未反映实际使用场景 - 测试参数与常见Axcrypt文件的实际加密强度不符

解决方案

开发团队实施了以下改进:

  1. 统一测试参数:采用hashcat中使用的标准迭代次数0x507(1287次)作为基准
  2. 版本区分:为CPU格式添加第二个成本参数,以区分不同版本特性
  3. 优化测试长度:设置benchmark_length为0x507,使测试更贴近实际场景

影响范围

此问题不仅影响Axcrypt相关格式,检查发现多个OpenCL格式存在类似混合成本基准测试问题,包括:

  1. Argon2格式:测试t=3、m=4096、p=1参数组合
  2. DMG格式:测试1000次迭代和版本2/1
  3. 7z格式:测试524288次迭代及多种参数组合
  4. SSH私钥格式:测试不同KDF/密码组合

实施效果

改进后的基准测试将提供:

  1. 更一致的性能比较基准
  2. 更贴近实际使用场景的测试结果
  3. 更准确的分析速度预估

技术建议

对于密码安全研究人员,建议:

  1. 在比较不同格式性能时,注意基准测试参数的统一性
  2. 实际分析时,应根据目标文件的具体加密参数调整预期
  3. 关注不同版本Axcrypt的安全增强,特别是SHA1到SHA512的迁移

此改进已随最新代码提交生效,将提升John the Ripper在Axcrypt相关格式分析评估方面的准确性。

登录后查看全文
热门项目推荐
相关项目推荐