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

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>
            亚洲黄色视屏| 一本一道久久综合狠狠老精东影业 | 91久久在线| 久久国产精品久久精品国产| 国产精品超碰97尤物18| 一区二区高清在线| 亚洲高清资源综合久久精品| 裸体丰满少妇做受久久99精品| 国内精品久久久久国产盗摄免费观看完整版| 亚洲一品av免费观看| 99精品视频一区| 欧美日韩一二三区| 亚洲一区二区三区在线播放| 亚洲人成网站777色婷婷| 欧美本精品男人aⅴ天堂| 狠色狠色综合久久| 榴莲视频成人在线观看| 久久久噜噜噜久噜久久 | 亚洲人成在线观看| 亚洲国产精品va在线看黑人动漫| 欧美成人一二三| 99re热精品| 亚洲视屏一区| 国产一区二区成人久久免费影院| 久久三级视频| 免费成人av在线看| 亚洲桃色在线一区| 亚洲欧美日韩一区二区三区在线 | 久久久国产精品一区| 久久精品二区三区| 亚洲激情在线播放| 日韩一区二区精品在线观看| 国产精品久久久久久影视| 欧美成人午夜视频| 欧美色图一区二区三区| 亚洲欧美视频一区| 欧美中文字幕视频在线观看| 激情亚洲网站| 亚洲精品美女在线| 国产伦精品一区二区三区视频孕妇| 久久久久国产免费免费| 蜜桃伊人久久| 亚洲欧美日韩中文播放| 欧美一区二区三区在线观看视频| 亚洲区一区二区三区| 亚洲天堂av在线免费| 在线观看视频一区二区| 夜夜精品视频| 亚洲高清av| 亚洲一区日韩在线| 在线日韩一区二区| 亚洲手机在线| 日韩香蕉视频| 欧美在线亚洲在线| 亚洲视频专区在线| 老司机午夜精品视频在线观看| 亚洲一区中文字幕在线观看| 久久综合伊人| 久久久99国产精品免费| 欧美日韩在线直播| 亚洲风情在线资源站| 国内成+人亚洲| 亚洲男人av电影| 在线视频欧美日韩| 美女露胸一区二区三区| 欧美专区亚洲专区| 国产精品国产精品国产专区不蜜| 欧美成人资源网| 国产在线国偷精品产拍免费yy| 亚洲精品久久久久久久久| 在线欧美亚洲| 欧美在线|欧美| 欧美一区二区三区精品电影| 欧美日韩成人一区二区三区| 欧美高清在线观看| 在线观看久久av| 久久不射网站| 久久gogo国模裸体人体| 国产精品劲爆视频| 一区二区免费看| 日韩特黄影片| 欧美激情精品久久久| 欧美国产精品劲爆| 在线日韩欧美| 免费日韩成人| 亚洲国产成人高清精品| 亚洲三级视频| 欧美精品18videos性欧美| 国产精品普通话对白| 久久久夜夜夜| 国产精品xvideos88| 亚洲电影免费| 亚洲成人在线视频播放| 午夜精品在线观看| 亚洲男人影院| 欧美夫妇交换俱乐部在线观看| 久久午夜国产精品| 欧美亚洲免费电影| 国产欧美va欧美va香蕉在| 亚洲欧美另类在线观看| 欧美一区二区日韩一区二区| 国产精品一区二区男女羞羞无遮挡| 正在播放欧美视频| 久久成人精品一区二区三区| 国产专区综合网| 久久久久在线| 亚洲人体偷拍| 亚洲欧美视频在线| 久久久久久91香蕉国产| 欧美日韩专区在线| 亚洲精品综合在线| 亚洲一级黄色| 国产欧美亚洲日本| 久久国产精品毛片| 欧美韩日一区| 欧美粗暴jizz性欧美20| 亚洲娇小video精品| 亚洲一区在线免费| 韩日视频一区| 欧美激情欧美激情在线五月| 99热精品在线观看| 久久久99久久精品女同性| 亚洲国产精品久久久久秋霞不卡| 欧美激情成人在线| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 久久精品视频在线免费观看| 欧美日韩国产色综合一二三四 | 免费的成人av| 亚洲看片网站| 久久精品中文| 日韩午夜激情电影| 国产日韩亚洲欧美| 欧美精品久久久久久久免费观看| 亚洲一区二区三区免费在线观看| 欧美va天堂在线| 亚洲女性裸体视频| 亚洲黑丝一区二区| 国产精品视频男人的天堂| 蜜臀av国产精品久久久久| 亚洲欧美国产77777| 亚洲人成人一区二区三区| 久久久久久久久蜜桃| 欧美黄色网络| 亚洲婷婷在线| 影音先锋日韩有码| 欧美三级电影精品| 久久av一区二区| 日韩亚洲欧美在线观看| 久久久久久久久伊人| 在线视频中文亚洲| 亚洲国产精品传媒在线观看| 国产精品一区在线播放| 亚洲精品一区二区三区蜜桃久| 国产精品丝袜91| 欧美国产日韩一区二区| 欧美一区视频在线| 亚洲小视频在线观看| 亚洲全黄一级网站| 欧美成人黑人xx视频免费观看| 欧美亚洲综合另类| 亚洲免费综合| 亚洲欧美文学| 亚洲高清在线观看一区| 亚洲精品视频啊美女在线直播| 午夜精品一区二区三区在线| 夜夜嗨av一区二区三区网站四季av | 欧美一区二区三区精品电影| 99这里只有久久精品视频| 亚洲第一网站免费视频| 国产精品中文在线| 国产精品美女久久久久av超清| 欧美日本不卡高清| 欧美日韩天天操| 欧美视频中文字幕| 国产精品草草| 国产伦精品一区二区三区免费| 国产精品美女午夜av| 国产精品美女www爽爽爽| 国产精品美女主播在线观看纯欲| 国产精品久久久| 国产精品专区h在线观看| 国产精品一香蕉国产线看观看| 国产精品久久久久三级| 国产精品一区二区三区四区 | 久久国产精品黑丝| 欧美一区二区三区在线| 久久精品国产999大香线蕉| 久久久久久电影| 久久亚洲欧美| 欧美成人三级在线| 亚洲福利在线视频| 日韩一二三区视频| 亚洲一区视频| 久久精品中文| 欧美本精品男人aⅴ天堂| 欧美午夜精品一区二区三区| 国产精品一级二级三级| 亚洲福利视频二区| 亚洲欧美日韩精品| 久久一二三四|