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

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>
            亚洲欧美高清| 亚洲国产精品毛片| 亚洲一区三区视频在线观看| 日韩视频一区二区三区| 国产精品久久久久婷婷| 欧美在线免费| 一区二区三区四区国产精品| 99re8这里有精品热视频免费| 欧美午夜精品电影| 久久婷婷av| 亚洲精品婷婷| 久久激情久久| 久久综合九九| 亚洲自拍偷拍福利| 久久婷婷久久| 亚洲欧美视频一区二区三区| 久久精品国产亚洲aⅴ| 亚洲人屁股眼子交8| a91a精品视频在线观看| 国产亚洲一级高清| 亚洲青涩在线| 国产欧美一级| 亚洲精品国产精品国自产观看| 国产精品免费网站在线观看| 麻豆精品网站| 国产精品家教| 亚洲国产欧美日韩精品| 国产精品久久二区| 欧美不卡福利| 国产精品亚洲аv天堂网| 狂野欧美一区| 国产一区二区在线观看免费| 亚洲一区二区三区免费观看| 一区二区三区免费网站| 伊人久久男人天堂| 99亚洲一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲网站在线播放| 亚洲精品四区| 麻豆精品在线视频| 久久九九热免费视频| 欧美日韩在线一二三| 亚洲成人在线网| 国产在线欧美日韩| 亚洲一区二区毛片| 宅男精品导航| 欧美激情视频一区二区三区在线播放| 久久久精品国产免大香伊 | 欧美日韩成人综合在线一区二区| 久久精品免费观看| 99精品国产99久久久久久福利| 欧美一区二区三区四区在线观看地址| 欧美xx69| 影音先锋国产精品| 亚洲一线二线三线久久久| 夜夜爽99久久国产综合精品女不卡| 久久九九精品| 久久亚洲精品网站| 国产精品二区三区四区| 亚洲久久在线| 久久久久久九九九九| 欧美一区国产在线| 国产日韩精品在线观看| 亚洲一区日本| 久久精品一区四区| 国产亚洲一区二区三区| 亚欧美中日韩视频| 欧美综合国产精品久久丁香| 亚洲最新中文字幕| 欧美日韩一区二区三| 中文一区二区在线观看| 久久久国际精品| 久久精品九九| 在线欧美影院| 欧美1区3d| 亚洲人成在线观看一区二区 | 久久裸体艺术| 欧美二区在线观看| 亚洲七七久久综合桃花剧情介绍| 欧美777四色影视在线| 亚洲欧洲精品天堂一级| 一区二区国产在线观看| 国产精品女人久久久久久| 亚洲欧美日韩一区在线| 久久综合一区| 亚洲电影免费观看高清| 国产女主播一区二区三区| 久久国产精品久久久久久电车| 亚洲精品日产精品乱码不卡| 久久精品一区四区| 国产精品丝袜xxxxxxx| 亚洲欧美经典视频| 欧美成人69| 亚洲一区3d动漫同人无遮挡| 国产日韩av在线播放| 免费不卡亚洲欧美| 亚洲午夜免费视频| 免费h精品视频在线播放| 一本一本大道香蕉久在线精品| 国产精品亚洲美女av网站| 久久嫩草精品久久久精品| 99伊人成综合| 麻豆91精品91久久久的内涵| 在线亚洲自拍| 亚洲国产精品成人| 国产欧美短视频| 欧美精品日韩精品| 免费亚洲一区| 中文久久乱码一区二区| 欧美一二三区精品| 欧美美女日韩| 欧美成人一区二区三区片免费| 亚洲人成免费| 欧美高清视频在线播放| 亚洲小说春色综合另类电影| 韩国v欧美v日本v亚洲v| 欧美日韩在线免费| 毛片基地黄久久久久久天堂| 午夜精品在线观看| 日韩午夜av| 亚洲第一毛片| 久久久亚洲人| 亚洲欧美日韩国产综合精品二区 | 亚洲综合999| 亚洲啪啪91| 免费不卡欧美自拍视频| 欧美成人在线免费视频| 亚洲人体一区| 久久精品国产99国产精品澳门 | 一级成人国产| 国模一区二区三区| 国产精品高潮在线| 欧美日韩国产欧| 欧美大尺度在线| 另类天堂视频在线观看| 久久国产主播精品| 久久精品久久99精品久久| 欧美一区二区三区喷汁尤物| 亚洲摸下面视频| 亚洲永久免费| 性欧美xxxx大乳国产app| 亚洲午夜精品一区二区| 亚洲欧美另类在线| 欧美一区网站| 亚洲系列中文字幕| 亚洲视屏一区| 久久国产精品99精品国产| 国产精品呻吟| 老司机午夜精品视频| 欧美国产第一页| 欧美大片免费观看在线观看网站推荐| 久久精品国产免费看久久精品| 夜夜嗨一区二区| 欧美黄免费看| 国产欧美一区二区在线观看| 猫咪成人在线观看| 亚洲国产成人av在线| 欧美一区二区三区四区在线观看地址| 日韩一级二级三级| 亚洲午夜久久久| 国产精品二区三区四区| 欧美精品偷拍| 蜜臀91精品一区二区三区| 久久精品国产免费观看| 欧美成人精精品一区二区频| 亚洲女女女同性video| 久久成人精品| 激情综合中文娱乐网| 欧美专区在线观看一区| 久久久久欧美精品| 久久精品亚洲热| 欧美激情精品久久久久久| 国产免费一区二区三区香蕉精| 国产日韩欧美91| 亚洲国产高清在线| 亚洲一区bb| 欧美大片免费看| 中文精品视频一区二区在线观看| 欧美专区在线观看| 欧美日韩日日夜夜| 尤物在线观看一区| 亚洲视频专区在线| 欧美国产91| 亚洲欧美日韩另类| 欧美777四色影视在线| 亚洲欧美日韩精品久久久久| 国内一区二区三区在线视频| 欧美成人免费大片| 欧美精品乱人伦久久久久久| 欧美日韩国产不卡| 国产亚洲成av人在线观看导航| 亚洲精品久久久久久久久久久| 亚洲欧美日韩在线播放| 亚洲电影免费| 欧美一区久久| 国产精品久久毛片a| 亚洲精品一区中文| 麻豆久久婷婷| 午夜精品久久99蜜桃的功能介绍| 欧美国产日韩二区|