【问题标题】:ssl. is it able to add/remove ssl from a bsd socket?ssl。是否能够从 bsd 套接字添加/删除 ssl?
【发布时间】:2011-04-06 10:51:45
【问题描述】:

我在看 openssl example 在 c.

看来我可以先创建一个普通的 bsd 套接字,然后
在其之上添加 ssl 功能。

/* Connect the TCP socket*/
sock=tcp_connect(host,port);

/* Connect the SSL socket */
ssl=SSL_new(ctx);
sbio=BIO_new_socket(sock,BIO_NOCLOSE);
SSL_set_bio(ssl,sbio,sbio);
if(SSL_connect(ssl)<=0)
  berr_exit("SSL connect error");

其中 tcp_connect(host,port) 返回一个常规的 bsd 套接字。(为了使这篇文章简短,我没有在这里粘贴代码)

我的问题是,
1. ssl下传输数据会不会很慢。
2. 如果是这样,想知道我是否可以从套接字中删除 ssl 以使其成为常规的 tcp 套接字(因为网站有登录页面的 https 和其他页面的 http。我想知道是否可以仅将 ssl 用于前几个身份验证数据包我定义)

谢谢

【问题讨论】:

    标签: sockets ssl openssl


    【解决方案1】:

    是的,如果 ssl 层是一个简单的套接字,并且你关闭了 SSL 会话,那么套接字仍然有用,你可以使用它。

    I.E.您可以在协议中的两个部分之间建立 ssl 会话以进行客户端身份验证,在身份验证后关闭 SSL 连接并使用套接字进行其余连接。

    【讨论】:

      猜你喜欢
      • 2012-05-04
      • 2015-09-26
      • 2012-01-03
      • 1970-01-01
      • 2013-09-18
      • 2017-12-25
      • 2013-10-14
      • 2016-08-19
      • 1970-01-01
      相关资源
      最近更新 更多