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

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| 国产精品www| 国产精品久久久久久久app| 国产精品一区在线观看你懂的| 欧美日韩一区在线观看视频| 欧美日韩精品免费观看视频完整| 欧美日韩成人一区二区| 国产精品欧美一区二区三区奶水| 国产精品视频免费观看| 激情另类综合| 亚洲精品一区二区三| 亚洲视频欧洲视频| 久久精品123| 亚洲福利视频网| 亚洲精品国产视频| 亚洲免费人成在线视频观看| 麻豆成人精品| 国产精品亚洲综合天堂夜夜 | 性伦欧美刺激片在线观看| 久久丁香综合五月国产三级网站| 亚洲你懂的在线视频| 国产精品免费看久久久香蕉| 国产一区二区三区在线播放免费观看 | 在线一区二区日韩| 久久九九精品99国产精品| 亚洲国产日韩在线| 午夜一区二区三区不卡视频| 欧美激情精品久久久久| 国产一区二区三区在线观看网站| 一区二区三区鲁丝不卡| 免费在线视频一区| 亚洲欧美日韩精品在线| 欧美日韩一区二区免费视频| 精品白丝av| 久久激情网站| 亚洲一区免费视频| 欧美日韩精品免费观看| 亚洲高清成人| 久久中文字幕导航| 性欧美8khd高清极品| 欧美性大战久久久久| 亚洲精品免费在线观看| 亚洲大片精品永久免费| 久久免费的精品国产v∧| 国产亚洲精品一区二555| 亚洲欧美另类国产| 亚洲美女性视频| 欧美久久久久中文字幕| 最新国产乱人伦偷精品免费网站| 久久视频一区| 久久av最新网址| 国产一区二区电影在线观看| 久久国产福利| 欧美在线不卡| 激情久久影院| 欧美成人自拍视频| 久久一二三国产| 亚洲韩日在线| 91久久国产综合久久91精品网站| 美女黄网久久| 日韩一级欧洲| 一区二区av在线| 国产精品蜜臀在线观看| 欧美一区免费| 久久精品论坛| 亚洲欧洲在线视频| 亚洲精品日韩久久| 国产精品久久久久久久久搜平片| 香蕉亚洲视频| 久久久免费精品视频| 亚洲国产天堂久久国产91| 亚洲国产日韩一区| 国产精品成人一区二区网站软件| 亚洲一卡久久| 香蕉久久精品日日躁夜夜躁| 久久人人精品| 亚洲一级黄色片| 国产精品国码视频| 久久精品久久99精品久久| 欧美一区免费视频| 亚洲国产美女久久久久| 亚洲国产你懂的| 国产精品扒开腿做爽爽爽视频| 欧美一区二区视频在线| 久久久亚洲成人| 一本大道av伊人久久综合| 亚洲在线日韩| 亚洲日本va午夜在线电影| 中国日韩欧美久久久久久久久| 狠狠久久五月精品中文字幕| 亚洲欧洲在线播放| 国产一区观看| 99国产精品国产精品毛片| 红桃视频欧美| 一区二区三区三区在线| 在线观看视频一区二区| 99国产精品| 亚洲福利国产精品| 亚洲尤物精选| 夜夜嗨av色一区二区不卡| 欧美中文字幕在线观看| 亚洲一区www| 欧美成人免费全部| 久久夜色精品一区| 国产精品一区二区三区久久| 亚洲黄色高清| 在线观看国产一区二区| 亚洲欧美日韩另类| 亚洲在线观看视频| 欧美精品在线免费| 欧美成人一区二区三区在线观看| 国产乱理伦片在线观看夜一区| 亚洲福利视频专区| 激情久久久久久久| 性欧美办公室18xxxxhd| 欧美亚洲自偷自偷| 国产精品国产三级国产aⅴ9色| 亚洲日本中文字幕| 亚洲国产va精品久久久不卡综合| 亚洲一区二区在线看| 亚洲婷婷综合久久一本伊一区| 免费欧美日韩| 免费在线观看日韩欧美| 国内外成人免费视频| 亚洲一区国产| 亚洲欧美在线磁力| 国产精品久久一卡二卡| 宅男精品视频| 性久久久久久久久| 国产精品普通话对白| 亚洲香蕉在线观看| 亚欧成人在线| 国产日韩av高清| 久久高清一区| 欧美成年视频| 亚洲精品国产精品国自产观看浪潮 | 欧美国产精品va在线观看| 久久激情一区| 久久米奇亚洲| 黄色亚洲免费| 久久蜜臀精品av| 牛牛影视久久网| 亚洲激情成人网| 欧美精品在欧美一区二区少妇| 亚洲精品在线观看免费| 亚洲一区二区精品在线观看| 国产精品久久久久999| 亚洲欧美成aⅴ人在线观看| 久久不射中文字幕| 狠狠88综合久久久久综合网| 久久乐国产精品| 亚洲国产综合91精品麻豆| 中文一区字幕| 国产一区二区三区高清| 亚洲伦理久久| 欧美欧美天天天天操| 亚洲特级毛片| 久久综合中文色婷婷| 亚洲日本中文字幕区| 欧美偷拍另类| 欧美在线地址| 亚洲美洲欧洲综合国产一区| 久久成人精品一区二区三区| 在线观看亚洲a| 欧美日韩在线三区| 久久国产天堂福利天堂| 亚洲精品一区二区三区樱花| 久久国产黑丝| 一本大道av伊人久久综合| 国产日韩欧美电影在线观看| 欧美.com| 欧美在线免费观看视频| 亚洲欧洲精品一区二区| 久久精品九九| 在线视频免费在线观看一区二区| 国产日韩欧美精品在线| 欧美精品一区二区精品网 | 午夜精品福利视频| 亚洲电影av在线| 国产精品国产三级国产普通话三级| 久久精品91久久久久久再现| 一区二区电影免费在线观看| 欧美二区在线观看| 欧美一区二区三区喷汁尤物| 亚洲另类自拍| 在线国产日韩| 国内精品美女在线观看| 国产精品福利av| 欧美成人dvd在线视频| 久久岛国电影| 欧美亚洲免费在线| 一区二区三区精品视频| 亚洲激情欧美| 欧美激情视频一区二区三区在线播放 | 国产欧美视频一区二区| 欧美日韩精品是欧美日韩精品| 久久久久久婷| 久久精品国产精品|