由于加密不匹配,IRX 上载失败
症状
当您尝试上载 IRX 文件进行扫描时,您会看到以下错误:
Error: The .irx file was encrypted for use in a different service.
原因
该 IRX 文件加密所使用的公钥不是您当前服务实例的正确公钥。
每个 AppScan 服务实例(AppScan on Cloud、AppScan 360° 或专用实例)都会使用唯一的加密密钥对:
- 公用密钥:由服务分发,用于加密 IRX 文件。
- 私钥:由服务持有,用于解密和处理上载。
公钥和私钥在数学上是相关的,并且唯一地标识用户;使用一对密钥中的某个密钥加密的数据只能使用该密钥对中的另一个密钥进行解密。因此,使用服务的公钥加密的 IRX 文件只能由具有匹配私钥的服务进行分析。尝试上载针对不同服务加密的文件会导致上述错误。
解决方法
要解决此问题,请执行以下操作:
- 检查您的服务 URL。
- 打开 server.apsettings 文件。
- AppScan on Cloud、AppScan 360° 和专用实例: SAClientUtil\config\server.apsettings
- AppScan Go! 和插件: <user_home>\.appscan\<SAClientUtil>\config\server.apsettings
- 验证 service_url 是否与您要尝试将 IRX 文件上载到的服务完全匹配。
例如,如果您要上载到 ASoC,则 service_url 应为 https://cloud.appscan.com 或 https://eu.cloud.appscan.com。如果您要上载到 AppScan 360°,则 service_url 应与安装期间指定的位置相匹配。如果您使用的是专用实例,则 service_url 应与专用实例 URL 相匹配。
- 打开 server.apsettings 文件。
- 更新您的公钥。
- 从 SAClientUtil 文件夹中,获取所选服务的正确 rsa.pub 密钥。运行:
appscan get_pubkey
- 从 SAClientUtil 文件夹中,获取所选服务的正确 rsa.pub 密钥。运行:
- 重新生成 IRX,然后再次尝试上载该文件。