/**
   * Populate encryption-related parameters.
   *
   * @param config the security configuration to populate
   */
  protected static void populateEncryptionParams(BasicSecurityConfiguration config) {
    // Data encryption URI's
    config.registerDataEncryptionAlgorithmURI(
        "AES", 128, EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES128);
    config.registerDataEncryptionAlgorithmURI(
        "AES", 192, EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES192);
    config.registerDataEncryptionAlgorithmURI(
        "AES", 256, EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES256);
    config.registerDataEncryptionAlgorithmURI(
        "DESede", 168, EncryptionConstants.ALGO_ID_BLOCKCIPHER_TRIPLEDES);
    config.registerDataEncryptionAlgorithmURI(
        "DESede", 192, EncryptionConstants.ALGO_ID_BLOCKCIPHER_TRIPLEDES);

    // Key encryption URI's

    // Asymmetric key transport algorithms
    config.registerKeyTransportEncryptionAlgorithmURI(
        "RSA", null, "AES", EncryptionConstants.ALGO_ID_KEYTRANSPORT_RSAOAEP);
    config.registerKeyTransportEncryptionAlgorithmURI(
        "RSA", null, "DESede", EncryptionConstants.ALGO_ID_KEYTRANSPORT_RSA15);

    // Symmetric key wrap algorithms
    config.registerKeyTransportEncryptionAlgorithmURI(
        "AES", 128, null, EncryptionConstants.ALGO_ID_KEYWRAP_AES128);
    config.registerKeyTransportEncryptionAlgorithmURI(
        "AES", 192, null, EncryptionConstants.ALGO_ID_KEYWRAP_AES192);
    config.registerKeyTransportEncryptionAlgorithmURI(
        "AES", 256, null, EncryptionConstants.ALGO_ID_KEYWRAP_AES256);
    config.registerKeyTransportEncryptionAlgorithmURI(
        "DESede", 168, null, EncryptionConstants.ALGO_ID_KEYWRAP_TRIPLEDES);
    config.registerKeyTransportEncryptionAlgorithmURI(
        "DESede", 192, null, EncryptionConstants.ALGO_ID_KEYWRAP_TRIPLEDES);

    // Other encryption-related params
    config.setAutoGeneratedDataEncryptionKeyAlgorithmURI(
        EncryptionConstants.ALGO_ID_BLOCKCIPHER_AES128);
  }