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

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 閱讀(2862) 評論(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精品在线观看| 亚洲深夜福利视频| 久久国产欧美精品| 欧美大片网址| 国产欧美日韩综合| 亚洲毛片在线观看| 久久久久久69| 一本色道久久综合亚洲精品高清| 亚洲欧美日韩一区| 欧美+日本+国产+在线a∨观看| 欧美日韩精品在线| 亚洲激情一区二区三区| 久久精品理论片| 一区二区日韩伦理片| 亚洲线精品一区二区三区八戒| 亚洲精品久久久蜜桃 | 国产精品亚洲一区| 美国十次成人| 欧美亚洲动漫精品| 在线观看中文字幕亚洲| 日韩午夜电影在线观看| 久久精品国产欧美激情| 最近中文字幕日韩精品| 亚洲欧美日韩一区二区| 欧美视频在线播放| ●精品国产综合乱码久久久久| 洋洋av久久久久久久一区| 亚洲欧美日韩精品久久久| 麻豆精品在线视频| 亚洲综合精品四区| 国产婷婷一区二区| 亚洲一级高清| 欧美一区二区三区免费视| 国产中文一区二区| 久久综合色播五月| 欧美激情亚洲| 亚洲精品影视| 亚洲欧美成人一区二区三区| 国产一级一区二区| 亚洲精品久久久久中文字幕欢迎你| 羞羞漫画18久久大片| 亚洲国产精品一区二区www在线| 欧美大秀在线观看| 国产精品乱人伦中文| 亚洲国产精品嫩草影院| 国产老女人精品毛片久久| 久久精品国产亚洲一区二区| 免费亚洲一区| 免费中文字幕日韩欧美| 欧美高潮视频| 亚洲无毛电影| 国产免费观看久久黄| 一区二区三区高清不卡| 亚洲精品国产精品乱码不99按摩| 亚洲一区二区三区高清 | 在线精品视频一区二区三四| 99视频超级精品| 亚洲国产欧美一区二区三区同亚洲 | 亚洲黄色av| 欧美国产日韩xxxxx| 国产精品嫩草久久久久| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲日本一区二区| 影音先锋亚洲视频| 欧美一区二区三区视频免费| 亚洲欧美国产毛片在线| 欧美日韩国产成人在线免费| 亚洲激情第一区| 中文久久精品| 国产精品美女主播| 午夜影院日韩| 国产精品久久午夜夜伦鲁鲁| 亚洲日本黄色| 老色鬼久久亚洲一区二区| 亚洲一级黄色| 日韩亚洲欧美一区二区三区| 国产色产综合产在线视频| 欧美精品一卡| 欧美va亚洲va香蕉在线| 亚洲精品在线看| 欧美日韩另类丝袜其他| 免费成人你懂的| 99热在这里有精品免费| 欧美精品xxxxbbbb| 亚洲一区二区三区视频| 亚洲国产精品成人一区二区 | 中文亚洲欧美| 欧美大片91| 久久婷婷色综合| 午夜精品一区二区三区四区| 欧美午夜精品久久久久久超碰| 小黄鸭精品aⅴ导航网站入口| 久久综合网hezyo| 久久久av水蜜桃| 性做久久久久久久免费看| 一区二区三区成人| 亚洲国产精品久久久久久女王| 国产精品二区影院| 国产精品激情电影| 欧美日韩综合不卡| 欧美精品入口| 欧美精品国产一区| 欧美金8天国| 欧美理论大片| 国产伦精品一区二区三| 国产精品啊啊啊| 国产伦精品一区二区| 国产一区二区久久精品| 国产专区一区| 久久色在线播放| 夜夜嗨一区二区三区| 亚洲免费电影在线观看| 一区二区不卡在线视频 午夜欧美不卡'| 欧美激情精品久久久久久免费印度| 久久综合狠狠综合久久综合88| 久久在线精品| 亚洲国产精品美女| 香蕉久久夜色精品国产| 久久国产视频网站| 欧美极品一区二区三区| 国产精品亚洲综合色区韩国| 国产九九精品视频| 一本色道久久综合| 久久精品网址| 日韩一区二区精品视频| 久久久久国产精品厨房| 国产精品一区二区你懂的| 亚洲激情av| 免费日韩一区二区| 久久久精品久久久久| 国产毛片一区二区| 亚洲影院免费| 这里只有精品在线播放| 蜜乳av另类精品一区二区| 国产欧美在线看| 欧美一区二区性| 亚洲综合日韩在线| 国产乱码精品一区二区三区忘忧草 | 亚洲欧洲在线免费| 久久嫩草精品久久久久| 国产一区二区三区在线观看精品 | 久久阴道视频| 亚欧美中日韩视频| 99精品视频免费全部在线| 美女国产精品| 亚洲精品中文字幕在线观看| 欧美激情亚洲一区| 欧美日韩亚洲一区二区三区在线| 亚洲国产天堂久久综合| 亚洲第一精品在线| 欧美日韩免费在线视频| 欧美一级免费视频| 久久精品国产999大香线蕉| 国内精品久久久久久影视8| 欧美成人精品激情在线观看 | 欧美高清一区| 国产精品白丝jk黑袜喷水| 亚洲一级黄色| 欧美成人激情视频| 亚洲欧美日本国产专区一区| 欧美一区精品| 一本不卡影院| 欧美一级网站| 一区二区三区成人| 免费久久99精品国产自在现线 | 欧美成人亚洲成人日韩成人| 夜夜爽www精品| 久久综合色影院| 亚洲综合视频在线| 欧美精品色网| 欧美大片免费| 伊人精品成人久久综合软件| 9国产精品视频| 一区二区免费在线播放| 久久久噜噜噜久噜久久| 久久激情一区| 国产啪精品视频| 亚洲专区一区二区三区| 欧美一区免费视频| 欧美日韩国产亚洲一区| 999在线观看精品免费不卡网站| 在线观看视频欧美| 麻豆精品一区二区综合av| 久久影视三级福利片| 国内精品久久久久伊人av| 羞羞漫画18久久大片| 国产精品系列在线| 亚洲伊人第一页| 久久免费一区| 日韩视频精品| 国产精品视频大全|