I performed a few more tests to try to better understand what these parameters do. I learned a few things.
- Valid values of algorithm include MD5 and SHA-256.
- The checksum must be a hexadecimal string.
- The length of the checksum string must be appropriate for the algorithm specified. E.g.,
- MD5: 32 hexadecimal digits
- SHA-256: 64 hexadecimal digits
- The provided file must be a JAR file (ZIP compressed).
If any of these preliminary checks fails, the AE REST process responds immediately with:
400 Bad Request
{
"code": 45106,
"error": "The request is invalid and cannot be processed by the Automation Engine.",
"details": "No detail information available."
}
If the preliminary checks pass, the AE REST process reads the provided JAR file, and performs the signature check. I'm not sure how this part works, and I have been unable to persuade the AE server to accept any file when ignore_signature is set to false.
I opened a support ticket with Broadcom; I will report what I learn here.