IRX upload fails due to mismatched encryption

Symptom

When you attempt to upload an IRX file for scanning, you see this error:

Error: The .irx file was encrypted for use in a different service.

Cause

The IRX file was encrypted with the wrong public key for your current service instance.

Each AppScan service instance (AppScan on Cloud, AppScan 360°, or a private instance) uses a unique encryption key pair:
  • Public key: Distributed by the service to encrypt IRX files.
  • Private key: Held by the service to decrypt and process uploads.

Public and private keys are mathematically related and uniquely identify the user; data encrypted by one of the keys in a pair can be decrypted only by the other key in the pair. As such, an IRX file encrypted with a public key for a service can be analyzed only by the service with the matching private key. Attempting to upload a file encrypted for a different service results in the error above.

Resolution

To resolve the issue:
  1. Check your service URL.
    1. Open the server.apsettings file.
      • AppScan on Cloud, AppScan 360°, and private instances: SAClientUtil\config\server.apsettings
      • AppScan Go! and plugins: <user_home>\.appscan\<SAClientUtil>\config\server.apsettings
    2. Verify that service_url exactly matches the service to which you are attempting to upload the IRX file.

      For example, if you are uploading to ASoC, service_url should be https://cloud.appscan.com or https://eu.cloud.appscan.com. If you are uploading to AppScan 360°, service_url should match the location specified during install. If you are using a private instance, service_url should match the private instance URL.

  2. Update your public key.
    • From the SAClientUtil folder, fetch the correct rsa.pub key for your selected service. Run:
      appscan get_pubkey
  3. Regenerate the IRX and try again to upload it.