FreeLAN uses the OpenSSL library to provide encryption of both the data and control channels. It lets OpenSSL do all the encryption and authentication work, allowing FreeLAN to use all the ciphers available in the OpenSSL package.
Authentication
FreeLAN has several ways to authenticate peers with each other. From version 2.0 FreeLAN offers pre-shared keys, certificate-based, and username-password based authentication.