Encryption

The following nested setting within the paybylink.json file must be provided in encrypted form:

  • adyen.paybylink.apikeyEncrypted
  • If using a terminal (customer-present functionality), the following properties also need to be encrypted:
    • adyen.paybylink.customerPresent.key.identifierEncrypted
    • adyen.paybylink.customerPresent.key.passphraseEncrypted
    • adyen.paybylink.customerPresent.key.versionEncrypted

To achieve this, the following steps must be followed:

To encrypt a value: Open a terminal window and change directory to where the script file resides.

For Windows: Type encrypt-string.bat.

*For Linux: Type sudo ./encrypt-string.sh –e.

The user will be prompted to provide the value that needs to be encrypted. Once entered, the corresponding encrypted value will be shown and can then be copied to the relevant configuration key in the paybylink.json configuration file.

* You may be required to give script file(s) execution rights for example, chmod +x <PathToFile>

Note:

When using AES algorithm with a keysize that is greater than 128, you may get java.security.InvalidKeyException: Illegal key size or default parameters. If so, Additional Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files will need to be downloaded and extracted to %JAVA_HOME%/jre/lib/security/.