青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

woomsg

在路上

openssl使用(補)

1. 使用OpenSSL內置的數據結構BIO可以方便的創建安全和非安全鏈接,
在IBM Web上的"使用OpenSSL進行安全編程"系列的三篇文章是個不錯的入門:
http://www.ibm.com/developerworks/cn/linux/l-openssl.html

http://www.ibm.com/developerworks/cn/linux/l-openssl2.html
http://www.ibm.com/developerworks/cn/linux/l-openssl3.html

安全鏈接的簡要概述:
安全連接要求在連接建立后進行握手。在握手過程中,服務器向客戶機發送一個證書, 然后,客戶機根據一組可信任證書來核實該證書。它還將檢查證書,以確保它沒有過期。要 檢驗證書是可信任的,需要在連接建立之前提前加載一個可信任證書庫。
只有在服務器發出請求時,客戶機才會向服務器發送一個證書。該過程叫做客戶機認證。使用證書, 在客戶機和服務器之間傳遞密碼參數,以建立安全連接。盡管握手是在建立連接之后才進行的,但是客戶機或服務器可以在任何時刻請求進行一次新的握手。

附帶兩個Demo:分別是使用BIO建立普通的socket鏈接和ssl鏈接, 并下載google得主頁.

 1#include "openssl/ssl.h"
 2#include "openssl/bio.h"
 3#include "openssl/err.h"
 4
 5
 6#include <iostream>
 7#include <winsock2.h>
 8
 9
10#pragma comment( lib, "ws2_32.lib" )
11#pragma comment( lib, "libeay32.lib" )
12#pragma comment( lib, "ssleay32.lib" )
13
14
15int main( int argc, char* argv[] ) {
16  ////////////
17  // 初始化 //
18  ////////////
19  BIO* bio;
20  int ret;
21  char* request = "GET / HTTP/1.1\x0D\x0AHost: www.google.com\x0D\x0A\x43onnection: Close\x0D\x0A\x0D\x0A";
22  char buf[1024];
23
24  ERR_load_BIO_strings();
25  SSL_load_error_strings();
26  SSLeay_add_ssl_algorithms();
27
28
29  //////////////
30  // 建立鏈接 //
31  //////////////
32
33  bio = BIO_new_connect("www.google.com:80");
34  if(bio == NULL) {
35    std::cout<<"BIO_new_connect error."<<std::endl;
36    return -1;
37  }

38
39  if(BIO_do_connect(bio) <= 0{
40    std::cout<<"BIO_new_connect error."<<std::endl;
41    BIO_free_all(bio);
42    return -1;
43  }

44
45  // 發送請求
46  BIO_write(bio, request, strlen(request));
47
48  // 接收數據
49  for(;;) {
50    ret = BIO_read(bio, buf, 1023);
51    if(ret <= 0{
52      break;
53    }

54    buf[ret] = 0;
55    std::cout<<buf<<std::endl;
56  }

57
58  BIO_free_all(bio);
59  return 0;
60}

 1#include "openssl/ssl.h"
 2#include "openssl/bio.h"
 3#include "openssl/err.h"
 4
 5
 6#include <iostream>
 7#include <winsock2.h>
 8
 9
10#pragma comment( lib, "ws2_32.lib" )
11#pragma comment( lib, "libeay32.lib" )
12#pragma comment( lib, "ssleay32.lib" )
13
14// 我們默認對服務器的證書都是可信的,沒有進行服務器證書的驗證.
15int main( int argc, char* argv[] ) {
16  ////////////
17  // 初始化 //
18  ////////////
19  SSL* ssl;
20  SSL_CTX* ctx;
21
22  BIO* bio;
23  int ret;
24  char* request = "GET / HTTP/1.1\x0D\x0AHost: www.google.com\x0D\x0A\x43onnection: Close\x0D\x0A\x0D\x0A";
25  char buf[1024];
26
27  ERR_load_BIO_strings();
28  SSL_load_error_strings();
29  SSLeay_add_ssl_algorithms();
30
31  ctx = SSL_CTX_new ( SSLv23_client_method() );
32  if (!ctx) {
33    ERR_print_errors_fp(stderr);
34    std::cout<<"SSL_CTX_new error."<<std::endl;
35    return -1;
36  }

37
38  //////////////
39  // 建立鏈接 //
40  //////////////
41  bio = BIO_new_ssl_connect(ctx);
42  BIO_get_ssl(bio, & ssl);
43  SSL_set_mode(ssl, SSL_MODE_AUTO_RETRY);
44  BIO_set_conn_hostname(bio, "www.google.com:443");
45  if(BIO_do_connect(bio) <= 0{
46    std::cout<<"BIO_do_connect error."<<std::endl;
47    return -1;
48  }

49  
50
51  // 發送請求
52  BIO_write(bio, request, strlen(request));
53
54  // 接收數據
55  for(;;) {
56    ret = BIO_read(bio, buf, 1023);
57    if(ret <= 0{
58      break;
59    }

60    buf[ret] = 0;
61    std::cout<<buf<<std::endl;
62  }

63
64  BIO_free_all(bio);
65  SSL_CTX_free(ctx);
66  return 0;
67}

68

posted on 2008-10-22 10:48 ysong.lee 閱讀(2867) 評論(10)  編輯 收藏 引用

Feedback

# re: openssl使用(補) 2009-03-25 09:54 PGG

如何使用DTLS?  回復  更多評論   

# re: openssl使用(補) 2010-06-15 03:44 ReillyMelva

When you are in the corner and have no cash to move out from that point, you would need to receive the <a href="http://lowest-rate-loans.com/topics/credit-loans">credit loans</a>. Just because that should aid you unquestionably. I get commercial loan every single year and feel great just because of it.   回復  更多評論   

# re: openssl使用(補) 2010-09-28 21:55 essay writer

Thanks a lot that you created the good enough outcome associated with this topic. Though, to find the professional essay writing service, all of us must have some knowledge about custom write.   回復  更多評論   

# re: openssl使用(補) 2011-09-30 14:14 loans

Following my own analysis, billions of persons on our planet get the business loans at good banks. Thus, there's great possibilities to find a student loan in any country.   回復  更多評論   

# re: openssl使用(補) 2013-04-10 02:34 essay writing service review

Have no clue which firm to choose to get aid from? Look through QualityEssays testimonials best-writing-services.com, and take a right choice.  回復  更多評論   

# re: openssl使用(補) 2013-04-10 13:56 resume writing samples

Can’t complete remarkable CV yourself? Paper writing agencies accessible online will help you out with pleasure whenever you desire to try buying resume online.  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人精品在线观看| 美国成人直播| 海角社区69精品视频| 国产精品丝袜久久久久久app| 欧美成人免费va影院高清| 另类激情亚洲| 欧美日本精品一区二区三区| 欧美搞黄网站| 欧美香蕉大胸在线视频观看| 欧美亚洲成人精品| 国产日韩欧美制服另类| 一区二区三区在线观看视频| 亚洲人午夜精品免费| 一本色道久久综合亚洲91| 亚洲一区国产视频| 久久久美女艺术照精彩视频福利播放 | 欧美专区亚洲专区| 卡通动漫国产精品| 亚洲黄色av一区| 91久久午夜| 亚洲欧美一区二区在线观看| 久久久综合免费视频| 欧美日韩精品二区| 国内精品国语自产拍在线观看| 在线激情影院一区| 亚洲综合国产| 亚洲高清网站| 国产日韩精品一区二区三区在线| 欧美精品xxxxbbbb| 9l国产精品久久久久麻豆| 亚洲欧美日韩综合| 欧美成人一区二区三区在线观看 | 欧美大片91| 国产精品一区二区黑丝| 亚洲国产日韩一区| 久久爱另类一区二区小说| 亚洲国产小视频| 欧美一级在线视频| 欧美色欧美亚洲另类七区| 亚洲高清资源| 久久精品首页| 一区二区三区精品视频| 欧美大片在线观看| 亚洲福利小视频| 久久久久久网站| 亚洲性夜色噜噜噜7777| 欧美国产视频一区二区| 亚洲大片免费看| 久久久久综合网| 小辣椒精品导航| 国产精品久久| 亚洲深夜av| 亚洲精品乱码久久久久久蜜桃91| 久久精品国产77777蜜臀| 国产精品美女久久久久久2018 | 在线视频欧美日韩| 欧美成人亚洲| 久久一区二区三区超碰国产精品| 国产精品欧美风情| 亚洲小说春色综合另类电影| 亚洲国产精品综合| 欧美成人r级一区二区三区| 伊人久久综合| 欧美成人免费视频| 蜜桃久久精品一区二区| 最近看过的日韩成人| 亚洲国产日韩一区二区| 免费亚洲一区二区| 亚洲精品在线观| 亚洲精品影视在线观看| 欧美日韩精品一区二区在线播放| 一本色道88久久加勒比精品 | 久久精品五月| 久久久精品一区二区三区| 国产亚洲毛片| 乱中年女人伦av一区二区| 久久久国产精品亚洲一区| 亚洲免费在线播放| 国产一区二区在线观看免费| 亚洲免费电影在线| 亚洲精品小视频在线观看| 欧美国产精品一区| 99国产精品久久久| 一区二区久久久久久| 国产精品一区二区你懂得| 久久久av水蜜桃| 免费久久99精品国产自在现线| 亚洲精品久久久蜜桃| 99精品视频免费观看视频| 国产精品国产三级国产aⅴ浪潮 | 在线看成人片| 亚洲日本中文字幕区| 欧美吻胸吃奶大尺度电影| 欧美一区综合| 乱码第一页成人| 亚洲自拍另类| 久久香蕉国产线看观看av| 中文日韩电影网站| 欧美一级片久久久久久久| 亚洲成人在线网| 亚洲精品视频在线观看免费| 国产精品久久999| 久久综合精品一区| 欧美日韩一区在线播放| 久久久天天操| 欧美日韩在线观看一区二区三区| 欧美自拍偷拍午夜视频| 欧美成人精精品一区二区频| 亚洲男人的天堂在线aⅴ视频| 久久精品人人做人人综合| 99成人精品| 久久99伊人| 一区二区三区欧美在线观看| 久久精品91| 亚洲一区二区少妇| 久久国产日本精品| 亚洲性感激情| 欧美理论片在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美四级电影网站| 亚洲免费一级电影| 亚洲国产精品久久久久婷婷老年 | 蜜桃av噜噜一区二区三区| 亚欧美中日韩视频| 欧美日韩国产成人高清视频| 欧美成人精品h版在线观看| 国产日本欧美在线观看| 夜夜嗨av一区二区三区中文字幕 | 亚洲精品一区二区三| 在线观看一区| 久久综合久久综合这里只有精品| 欧美暴力喷水在线| 午夜视频在线观看一区二区| 欧美激情视频免费观看| 免费观看一级特黄欧美大片| 国产亚洲精品综合一区91| 亚洲专区一二三| 香蕉成人啪国产精品视频综合网| 欧美视频一二三区| 亚洲视频www| 亚洲一区激情| 国产精品久久福利| 亚洲一区二区三区中文字幕| 亚洲欧美日韩精品久久亚洲区 | 欧美一级黄色网| 久久精品一区蜜桃臀影院| 国产日产欧产精品推荐色| 亚洲欧美激情在线视频| 欧美一级理论性理论a| 国产日韩一区二区三区| 欧美乱大交xxxxx| 蜜臀久久久99精品久久久久久| 国产一区二区在线免费观看| 性欧美精品高清| 久久天天躁狠狠躁夜夜爽蜜月| 黄色精品免费| 欧美成人免费小视频| 亚洲国产一区二区a毛片| 亚洲免费观看高清完整版在线观看| 欧美成人午夜影院| 一本到12不卡视频在线dvd| 欧美伊人影院| 亚洲国产日韩综合一区| 欧美日韩在线观看一区二区三区| 99国产一区| 久久xxxx精品视频| 亚洲国产精品第一区二区三区| 欧美激情视频在线播放| 一区二区精品在线观看| 久久久久国产一区二区三区四区| 亚洲第一精品夜夜躁人人躁| 欧美激情一区二区三区蜜桃视频| 99在线|亚洲一区二区| 久久久久9999亚洲精品| 亚洲精品综合久久中文字幕| 国产精品久久久久久亚洲调教| 久久久久久黄| 国产精品99久久久久久www| 久久综合激情| 亚洲欧美日韩爽爽影院| 亚洲福利视频免费观看| 国产精品家庭影院| 欧美高清视频一区二区三区在线观看 | 91久久午夜| 久久精品国产亚洲精品| 一区二区三区免费看| 好吊视频一区二区三区四区| 欧美日韩理论| 美女精品网站| 亚洲欧美日本国产有色| 亚洲精品1234| 久久亚洲视频| 欧美在线在线| 亚洲欧美在线视频观看| 亚洲欧洲日产国码二区| 欧美国产日本高清在线| 欧美激情网友自拍| 校园激情久久| 在线综合亚洲| 欧美成人精品一区二区|