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

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>
            欧美aaa级| 一本到12不卡视频在线dvd| 欧美 日韩 国产在线| 老妇喷水一区二区三区| 久久天堂精品| 欧美日韩久久不卡| 99www免费人成精品| 99热精品在线| 亚洲欧美日韩系列| 久久人人九九| 欧美激情二区三区| 欧美日韩伦理在线免费| 国产毛片精品视频| 在线精品福利| 夜夜嗨av一区二区三区网页| 香蕉久久国产| 乱人伦精品视频在线观看| 免费在线观看精品| 一区二区日韩免费看| 亚洲欧美欧美一区二区三区| 久久精品中文| 欧美性大战久久久久久久| 黄色成人免费观看| 中文欧美日韩| 老司机成人在线视频| 亚洲第一黄色网| 亚洲女性喷水在线观看一区| 久久青草久久| 国产精品一二| 艳女tv在线观看国产一区| 久久午夜电影| 亚洲尤物影院| 欧美区高清在线| 亚洲国产mv| 久久久久在线| 亚洲欧美日韩爽爽影院| 欧美人与性动交a欧美精品| 在线视频国产日韩| 久久久国产成人精品| 99国产一区| 欧美精品18+| 亚洲欧洲日产国产网站| 免费观看不卡av| 欧美在线看片| 国产视频一区二区在线观看 | 欧美精品97| 在线日韩av片| 久久综合九色综合欧美狠狠| 亚洲一级片在线观看| 欧美激情精品久久久久久黑人| 国产亚洲人成a一在线v站 | 免费国产自线拍一欧美视频| 午夜精品亚洲一区二区三区嫩草| 欧美日韩视频不卡| 99re6这里只有精品| 欧美成人精品一区二区| 久久精视频免费在线久久完整在线看 | 国产精品久久久久久妇女6080| 欧美黄污视频| 亚洲国产日韩欧美在线动漫| 久久久久国产精品人| 欧美一区二区高清在线观看| 国产九九视频一区二区三区| 亚洲伊人伊色伊影伊综合网| 一区二区91| 国产日本亚洲高清| 久久久久久久高潮| 久久精品国产在热久久 | 蜜桃精品一区二区三区| 亚洲国产成人精品久久久国产成人一区| 欧美一区二区成人6969| 亚洲自拍偷拍网址| 国产一区香蕉久久| 久久一综合视频| 欧美在线高清| 亚洲国产精品尤物yw在线观看| 欧美va天堂在线| 欧美另类videos死尸| 亚洲欧美日韩国产另类专区| 午夜亚洲视频| 91久久精品国产91性色| 亚洲伦理在线| 国产日韩欧美不卡| 欧美大胆成人| 国产精品成人免费| 久久久久高清| 欧美国产亚洲精品久久久8v| 亚洲夜晚福利在线观看| 新片速递亚洲合集欧美合集| 激情综合色综合久久| 91久久精品国产91久久性色| 欧美日韩亚洲天堂| 久久青草欧美一区二区三区| 欧美黄免费看| 久久精品国产亚洲aⅴ| 欧美超级免费视 在线| 午夜久久电影网| 欧美jizzhd精品欧美巨大免费| 亚洲五月婷婷| 欧美 日韩 国产精品免费观看| 亚洲免费视频在线观看| 久久久久久久久久看片| 亚洲一区二区三区777| 久久亚洲一区| 亚洲欧美日韩国产中文| 美女网站在线免费欧美精品| 欧美中文字幕视频在线观看| 欧美精品在线视频观看| 久久精品国产久精国产一老狼| 欧美日韩国产精品 | 亚洲男人第一网站| 另类激情亚洲| 久久国产精品毛片| 国产精品地址| 日韩午夜电影av| 最新69国产成人精品视频免费| 久久久精品一区二区三区| 欧美一区中文字幕| 欧美激情综合色| 蜜乳av另类精品一区二区| 国产精品一区在线观看| 亚洲美女在线视频| 亚洲精品综合精品自拍| 免费日本视频一区| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产精品一区二区三区四区| 夜夜嗨av一区二区三区四区| 9l国产精品久久久久麻豆| 免费观看成人www动漫视频| 免费在线日韩av| 亚洲国产免费看| 牛牛国产精品| 亚洲欧洲一区二区三区| 99精品热视频| 欧美日韩精品福利| 9色国产精品| 午夜精品999| 国产香蕉97碰碰久久人人| 亚洲一区二区三区乱码aⅴ| 亚洲欧美不卡| 国产欧美视频一区二区三区| 亚洲一区二区精品在线观看| 午夜精品成人在线视频| 国产乱子伦一区二区三区国色天香| 亚洲自拍电影| 久久欧美肥婆一二区| 亚洲黄色免费电影| 欧美日韩mp4| 一区二区三区产品免费精品久久75 | 一本色道久久综合亚洲精品不 | 国产亚洲视频在线| 欧美亚洲日本网站| 看片网站欧美日韩| 亚洲人成亚洲人成在线观看图片| 噜噜爱69成人精品| 91久久精品视频| 亚洲欧美日韩国产综合精品二区| 国产欧美另类| 美女福利精品视频| 亚洲欧洲日产国码二区| 亚洲欧美日韩系列| 激情五月婷婷综合| 欧美精品激情| 亚洲欧美国产精品va在线观看| 久久久欧美一区二区| 亚洲伦理精品| 国产欧美日韩视频一区二区三区| 久久久成人精品| 99国产欧美久久久精品| 久久精品视频在线看| 亚洲精品一区二区网址| 国产精品久久77777| 久久久久一区二区三区| 日韩网站在线观看| 久久久久久亚洲精品中文字幕 | 国产精品www| 久久精品一区四区| 蜜臀91精品一区二区三区| 亚洲一区二区三区四区视频| 欧美一级二区| 亚洲精品一区二区在线| 国产午夜精品福利| 欧美老女人xx| 久久高清国产| 亚洲午夜精品视频| 美女国产一区| 久久精视频免费在线久久完整在线看 | 欧美福利一区二区三区| 亚洲综合导航| 亚洲精品日韩激情在线电影| 国产欧美一区二区精品仙草咪| 欧美福利电影网| 久久久国产精品一区| 9人人澡人人爽人人精品| 欧美88av| 麻豆av一区二区三区| 久久久久成人网| 性久久久久久久久久久久| 中日韩高清电影网| 日韩午夜一区|