encryptChallengeAnswer utility

The encryptChallengeAnswer utility encrypts plain text data that is stored in the database column USERREG.CHALLENGEANSWER.

The MemberSubSystem/challengeAnswerEncrypted configuration attribute in the instance configuration file must be set to true to encrypt the data.

Note: After you run the utility for the first time, you can use the MigrateEncryptedInfo utility to re-encrypt the data in USERREG.CHALLENGEANSWER.
The encryptChallengeAnswer utility is in the following directory:
  • LinuxAIXWC_installdir/bin/encryptChallengeAnswer.sh
  • For IBM i OS operating systemWC_installdir/bin/encryptChallengeAnswer.sh
  • WindowsWC_installdir/bin/encryptChallengeAnswer.bat


Diagram showing the encryptChallengeAnswer utility. Parameters are described in the following list.

Parameter values

LinuxIs your database type (db2 for DB2 databases).
AIXWindowsIs your database type, and is either db2 for DB2 databases or oracle for Oracle databases.
Is a mandatory parameter for the name of the instance, which to update.
The number of threads that are created to re-encrypt the data. It is recommended that this number matches the number of processors on the server that is running the utility.
The number of records that are processed before the transaction is committed. Set the commit_count to the maximum number of transactions that your database transaction log allows. A suggested value for this parameter is 5000.

If the merchant keys are not retrieved from the Key Locator Framework, the following list shows the accepted parameters:

An optional parameter for the current merchant key, in clear text (ASCII) form. Specify this parameter only if you are currently using a non-default merchant key, and you are now changing it to a new merchant key. In this case, also specify the new_key parameter. If you are currently using the default WebSphere Commerce Suite 5.1 merchant key, do not specify this parameter. The utility detects that you are using the default key.

If the merchant keys are retrieved from the Key Locator Framework, the accepted parameters are:

-k keys_config_file_location
The current and new merchant keys are to be retrieved from the Key Locator Framework using the specified key configuration file. The absolute path of the file must be specified.

Example 1

The current merchant key, 1234567890abcdef, is stored in encrypted format in the instance.xml file, and you want to encrypt the existing plain text challenge answer values in the database using this merchant key. In the example, the data is stored in a DB2 database and "demo" is the instance name:

encryptChallengeAnswer db2 demo 4 5000 1234567890abcdef
Note: This example is setting the num_of_threads value to 4 (for a four-processor server) and the commit_count to 5000.

Then, do the following steps:

  1. Start the WebSphere Commerce instance.
  2. Open a command prompt and navigate to the WC_installdir/bin directory
  3. Run the following command:
    • LinuxAIX WC_installdir/bin/config_ant.sh -DinstanceName= instance_name UpdateEAR
    • For IBM i OS operating system WC_userdir/bin/config_ant.sh -DinstanceName= instance_name UpdateEAR
    • Windows WC_installdir/bin/config_ant.bat -DinstanceName= instance_name UpdateEAR
  4. Restart your WebSphere Commerce instance.