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

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 閱讀(2887) 評論(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.  回復  更多評論   


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            在线午夜精品| 西瓜成人精品人成网站| 韩日精品视频| 久久综合国产精品台湾中文娱乐网| 亚洲承认在线| 欧美综合激情网| 日韩午夜剧场| 国产精品视频99| 亚洲欧美日韩在线观看a三区| 免费看亚洲片| 一本一道久久综合狠狠老精东影业| 国产精品久久77777| 欧美国产成人在线| 蜜臀av一级做a爰片久久| 欧美制服丝袜| 另类激情亚洲| 欧美精品在线看| 欧美日韩无遮挡| 国产精品高精视频免费| 欧美三级电影网| 欧美日韩在线一区二区| 亚洲精品裸体| 在线中文字幕不卡| 亚洲色在线视频| 香蕉免费一区二区三区在线观看| 亚洲欧美欧美一区二区三区| 欧美一级播放| 美女诱惑黄网站一区| 欧美18av| 欧美日韩国产一区二区三区地区 | 国产亚洲亚洲| 国产欧美在线观看一区| 国产一区二区三区不卡在线观看 | 欧美一级久久久| 久久久久国产精品一区二区| 久久久午夜电影| 欧美激情按摩在线| 国产精品三级视频| 亚洲国产精品成人精品| 一本色道久久综合亚洲91| 亚洲摸下面视频| 国产精品夜色7777狼人| 极品少妇一区二区三区精品视频| 亚洲激情网站| 欧美一区二区黄色| 欧美www视频在线观看| 亚洲精品免费一区二区三区| 亚洲欧美日韩精品久久久久| 欧美高清一区二区| 亚洲宅男天堂在线观看无病毒| 欧美亚洲一区| 欧美天天影院| 亚洲精品极品| 久久综合久久综合九色| 中文精品视频一区二区在线观看| 欧美国产精品va在线观看| 在线视频亚洲一区| 亚洲免费人成在线视频观看| 卡一卡二国产精品| 欧美国产日本韩| 激情久久综艺| 欧美一区二区三区成人| 亚洲精品久久久久久下一站 | 欧美视频久久| 亚洲国产婷婷香蕉久久久久久| 欧美一区二区三区四区在线观看地址 | 欧美日本亚洲| 在线观看国产成人av片| 亚洲一区在线观看视频| 亚洲国产视频一区| 久久综合久久久久88| 国产婷婷一区二区| 亚洲一区二区黄色| 亚洲毛片视频| 欧美巨乳在线| 欧美激情影院| 免费影视亚洲| 在线成人免费观看| 久久人人精品| 欧美一区二区视频网站| 国产精品一区免费视频| 亚洲二区三区四区| 欧美mv日韩mv亚洲| 亚洲午夜精品国产| 欧美亚洲综合另类| 国内自拍一区| 奶水喷射视频一区| 欧美aaa级| 99riav久久精品riav| 亚洲精品在线电影| 国产精品豆花视频| 亚洲靠逼com| 99国产精品久久久久久久| 欧美黑人在线观看| 国产一区二区三区久久久| 久久久九九九九| 久久综合给合久久狠狠色| 亚洲精品美女在线观看| 亚洲精选中文字幕| 国产精品一区二区三区四区 | 亚洲激情一区| 欧美色视频在线| 欧美在线视频二区| 久久婷婷丁香| 一本色道久久综合亚洲精品按摩| 日韩一区二区久久| 国产精品视频福利| 老**午夜毛片一区二区三区| 美女国产精品| 亚洲高清精品中出| 欧美一区二区免费| 麻豆久久精品| 亚洲一区二区三区免费视频| 亚洲欧美综合另类中字| 国产区日韩欧美| 亚洲欧美国产不卡| 久久久精品五月天| 亚洲一区二区三区精品在线观看 | 欧美成人精品不卡视频在线观看| 欧美激情精品久久久久| 久久精品国产清高在天天线| 另类综合日韩欧美亚洲| 亚洲在线视频| 美女视频黄 久久| 欧美亚洲一区二区在线观看| 老司机午夜精品视频| 欧美一级二区| 欧美日韩一视频区二区| 蜜臀久久99精品久久久画质超高清| 亚洲嫩草精品久久| 亚洲精品一区二区在线观看| 欧美激情一区二区三区成人| 久久福利精品| 欧美性猛交xxxx乱大交蜜桃| 久久一区二区视频| 国产伦一区二区三区色一情| 亚洲日本成人在线观看| 黑人一区二区三区四区五区| 一区二区三区日韩| 一本大道久久a久久精二百| 性久久久久久久久久久久| 99这里只有精品| 另类人畜视频在线| 久久国内精品自在自线400部| 欧美日韩在线三区| 亚洲国产综合91精品麻豆| 国产一区二区无遮挡| 亚洲一区二区三区精品在线| 亚洲精品美女免费| 午夜天堂精品久久久久| 亚洲激情偷拍| 久久综合免费视频影院| 亚洲永久网站| 久久视频精品在线| 久久日韩精品| 国产午夜精品全部视频在线播放| 亚洲黄色一区二区三区| 欧美日韩专区在线| 亚洲精品一区二区网址| 一区二区三区视频在线观看| 暖暖成人免费视频| 亚洲经典视频在线观看| 亚洲免费观看在线观看| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美本精品男人aⅴ天堂| 亚洲国产专区校园欧美| 欧美韩日高清| 日韩视频在线免费观看| 亚洲深夜福利视频| 欧美日韩在线视频一区二区| 99精品视频网| 亚洲永久免费精品| 欧美精品三级日韩久久| 欧美一级视频| 欧美激情a∨在线视频播放| 亚洲经典三级| 亚洲一区bb| 欧美日韩国产一区精品一区| 蜜桃视频一区| 国产一区二区三区免费不卡 | 亚洲裸体俱乐部裸体舞表演av| 欧美日韩国产综合网| 午夜精品亚洲| 91久久精品国产91性色| 久久精品首页| 亚洲午夜精品网| 亚洲国产精品综合| 国产一区二区三区日韩欧美| 欧美日韩在线综合| 欧美成人在线网站| 久久国产天堂福利天堂| 国产精品99久久久久久人| 亚洲大胆女人| 久久一二三国产| 久久精品二区| 欧美在线网站| 欧美一区二区三区免费视频| 亚洲最新在线视频| 亚洲经典一区| 一个人看的www久久|