How does StrongSwan enable different crypto libraries?
By default, strongSwan uses its own implementations for cryptographic algorithms. These are provided by e.g. the aes, sha1 and sha2 plugins. The default implementation for public key cryptography (RSA, DH) is provided by the gmp plugin, which relies on libgmp.
Enabling the openssl or gcrypt plugins, while not-building or not-loading the default plugins, allows to replace the default implementations with those provided by the respective libraries (libcrypto/OpenSSL or libgcrypt). The actual features provided by these plugins depend on how the underlying library was built, for instance, if OpenSSL was built with support for Elliptic Curve Cryptography (ECDSA, ECDH).
You can check which features each plugin provides with
It's important to note that these plugins are only used for the key exchange (IKE,
The parameters you may use in
Unless you've got a pressing reason to, I'd suggest that if you're trying to configure something like an IPSEC tunnel for the first time, stick to default values as much as possible, it'll make the process easier.
That said if you need to use gcrypt with strongswan, they have configuration examples for that scenario on their site here