ОК, для любого, кто обнаружит это в будущем, вам нужно создать свои сертификаты и подписать их соответствующим образом.Вот команды для linux:
// Генерируем закрытый ключ
openssl genrsa -des3 -out server.key 1024
// Генерируем запрос на подпись сертификата
openssl req -new -key server.key -out server.csr
// Подписываем сертификат закрытым ключом
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
// Удалить требование к паролю (например, необходимо)
cp server.key server.key.secure
openssl rsa -in server.key.secure -out server.key
// Создать файл dhparam
openssl dhparam -out dh512.pem 512
Как только вы это сделаете, вынужно изменить имена файлов в server.cpp и client.cpp.
server.cpp
context_.use_certificate_chain_file("server.crt");
context_.use_private_key_file("server.key", boost::asio::ssl::context::pem);
context_.use_tmp_dh_file("dh512.pem");
client.cpp
ctx.load_verify_file("server.crt");
Тогда все должно работать!