小编Jez*_*Jez的帖子

SSL证书和Boost asio

您好我正在尝试从通过C++使用https的网页下载内容.我从Boost asio示例中获取的基本客户端程序编译并运行良好,但是当我测试它时,例如Google:www.google.co.uk/?gws_rd = sl,它给出了错误"握手:证书验证失败" .

我认为这是因为ctx.set_default_verify_paths()不包含带有Google证书的路径(我在Windows上).

非常新的SSL,请你能帮助我以下的问题:

1)当我安装openSSL时,它是否在我的计算机上粘贴了一个受信任的认证机构列表?如果是这样,会导致Google的证书无法验证?

2)无论如何说我不关心验证,无论如何都要继续连接,就像在firefox中手动添加异常一样?我对连接是否可信并不特别感兴趣,因为我没有传输任何需要安全的东西.

任何一个的答案将不胜感激!

#include <iostream>
#include <istream>
#include <ostream>
#include <fstream>
#include <string>
#include <boost/asio.hpp>
#include <boost/asio/ssl.hpp>

using boost::asio::ip::tcp;
namespace ssl = boost::asio::ssl;
typedef ssl::stream<tcp::socket> ssl_socket;

int main(int argc, char* argv[])
{
  try
  {
if (argc != 3)
{
  std::cout << argc;
  std::cout << "Usage: sync_client <server> <path>\n";
  std::cout << "Example:\n";
  std::cout << "  sync_client www.boost.org /LICENSE_1_0.txt\n";
  return 1;
}

boost::asio::io_service io_service;

// Create a context that uses the default paths …
Run Code Online (Sandbox Code Playgroud)

c++ boost openssl boost-asio

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

boost ×1

boost-asio ×1

c++ ×1

openssl ×1