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

woomsg

在路上

openssl使用(補)

1. 使用OpenSSL內(nèi)置的數(shù)據(jù)結(jié)構(gòu)BIO可以方便的創(chuàng)建安全和非安全鏈接,
在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

安全鏈接的簡要概述:
安全連接要求在連接建立后進行握手。在握手過程中,服務(wù)器向客戶機發(fā)送一個證書, 然后,客戶機根據(jù)一組可信任證書來核實該證書。它還將檢查證書,以確保它沒有過期。要 檢驗證書是可信任的,需要在連接建立之前提前加載一個可信任證書庫。
只有在服務(wù)器發(fā)出請求時,客戶機才會向服務(wù)器發(fā)送一個證書。該過程叫做客戶機認證。使用證書, 在客戶機和服務(wù)器之間傳遞密碼參數(shù),以建立安全連接。盡管握手是在建立連接之后才進行的,但是客戶機或服務(wù)器可以在任何時刻請求進行一次新的握手。

附帶兩個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  // 發(fā)送請求
46  BIO_write(bio, request, strlen(request));
47
48  // 接收數(shù)據(jù)
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// 我們默認對服務(wù)器的證書都是可信的,沒有進行服務(wù)器證書的驗證.
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  // 發(fā)送請求
52  BIO_write(bio, request, strlen(request));
53
54  // 接收數(shù)據(jù)
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?  回復(fù)  更多評論   

# 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.   回復(fù)  更多評論   

# 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.   回復(fù)  更多評論   

# 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.   回復(fù)  更多評論   

# 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.  回復(fù)  更多評論   

# 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.  回復(fù)  更多評論   


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   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>
            欧美精品在欧美一区二区少妇| 亚洲精品中文字幕女同| 在线日韩日本国产亚洲| 欧美午夜片欧美片在线观看| 欧美人与性禽动交情品| 欧美日韩精品免费观看| 国产精品福利在线观看网址| 欧美亚州一区二区三区| 国产伦精品一区二区三区| 国产午夜精品美女视频明星a级| 国产欧美日韩视频一区二区| 一区二区三区在线看| 亚洲人成在线播放网站岛国| 亚洲一本视频| 久久裸体视频| 亚洲观看高清完整版在线观看| 国内精品嫩模av私拍在线观看| 国产专区欧美专区| 91久久线看在观草草青青| 亚洲网友自拍| 久久综合九色综合欧美就去吻| 亚洲国产岛国毛片在线| 一区二区三区欧美激情| 久久久久久久尹人综合网亚洲| 乱码第一页成人| 欧美午夜一区二区福利视频| 国产一区二区成人久久免费影院| 亚洲国产婷婷香蕉久久久久久99 | 一本久久知道综合久久| 午夜精品在线视频| 欧美aaaaaaaa牛牛影院| 在线视频免费在线观看一区二区| 欧美在线你懂的| 欧美视频一区二区三区在线观看| 国精品一区二区三区| 一区二区高清视频| 老牛嫩草一区二区三区日本| 一本色道久久综合狠狠躁的推荐| 欧美一区二区| 欧美天堂亚洲电影院在线观看| 精品91视频| 欧美一区二区三区在线观看视频 | 亚洲精品日韩在线观看| 欧美在线1区| 国产精品久久久久久模特| 亚洲国产欧美日韩精品| 久久久精品一品道一区| 一区二区三区不卡视频在线观看| 久久人人爽人人爽爽久久| 国产精品一区二区三区久久 | 国产小视频国产精品| 99精品国产99久久久久久福利| 巨乳诱惑日韩免费av| 亚洲免费一在线| 欧美午夜一区二区三区免费大片| 亚洲精品免费网站| 欧美粗暴jizz性欧美20| 久久精品伊人| 伊人成人在线| 久久综合一区二区三区| 欧美在线免费观看| 国产日韩在线看片| 久久精品二区亚洲w码| 午夜国产精品影院在线观看| 国产精品影音先锋| 欧美亚洲网站| 久久综合色一综合色88| 欧美综合二区| 在线播放一区| 欧美激情国产高清| 欧美黄色一区| 亚洲色无码播放| 亚洲午夜一级| 国产欧美日韩另类一区| 久久精品人人做人人爽| 久久精品一区| 亚洲激情国产精品| 亚洲精品男同| 国产精品久久久久久久久| 性做久久久久久久久| 欧美一区二粉嫩精品国产一线天| 一区二区亚洲精品国产| 亚洲国产成人porn| 欧美视频成人| 久久尤物视频| 欧美裸体一区二区三区| 亚洲一区尤物| 久久久成人网| av成人黄色| 欧美一区二区三区喷汁尤物| 在线日韩中文| 亚洲午夜激情网页| 激情久久久久久久| 亚洲人成人99网站| 国产欧美一区二区视频| 欧美成人一区二区三区| 欧美性猛交一区二区三区精品| 久热精品视频在线观看一区| 欧美精品成人| 久久尤物电影视频在线观看| 欧美日韩一区二区三区四区在线观看 | 久久久天天操| 欧美日本不卡| 久久久噜噜噜久久久| 欧美久久综合| 久久中文在线| 国产精品美女久久久浪潮软件 | 亚洲国产美国国产综合一区二区| 亚洲深夜av| 亚洲精品久久7777| 小辣椒精品导航| 亚洲午夜一二三区视频| 老司机午夜精品视频| 欧美一区二区日韩| 欧美日韩精品三区| 久久综合九色综合网站| 国产精品一二一区| 日韩一区二区免费看| 亚洲欧洲在线免费| 久久婷婷亚洲| 久久综合狠狠| 国产一区二区| 久久精品国产精品亚洲| 狠狠噜噜久久| 亚洲视频免费| 亚洲制服av| 欧美日韩在线视频一区二区| 欧美丰满高潮xxxx喷水动漫| 国内揄拍国内精品少妇国语| 亚洲主播在线播放| 亚洲摸下面视频| 欧美视频二区36p| 亚洲视频图片小说| 亚洲一区二区三区午夜| 欧美日韩免费观看一区二区三区 | 国产欧美精品国产国产专区| 99在线精品视频| 亚洲视频免费在线| 欧美日韩免费视频| 在线亚洲一区| 午夜精品国产精品大乳美女| 欧美揉bbbbb揉bbbbb| 亚洲免费观看高清完整版在线观看| 亚洲欧洲一区二区三区在线观看| 免费视频一区二区三区在线观看| 欧美高清影院| 日韩视频亚洲视频| 欧美日韩免费一区| 亚洲伊人久久综合| 久久久久久伊人| 亚洲黄网站黄| 欧美日韩一区二区在线观看视频| 亚洲免费观看视频| 午夜精品视频一区| 国内精品国产成人| 欧美a级在线| 一区二区欧美日韩视频| 欧美伊人久久久久久久久影院| 国产香蕉久久精品综合网| 另类激情亚洲| 99精品热视频| 久久人91精品久久久久久不卡| 尤妮丝一区二区裸体视频| 狂野欧美激情性xxxx欧美| 亚洲黄页一区| 午夜伦欧美伦电影理论片| 韩国av一区| 欧美日韩视频不卡| 欧美一区二区三区精品| 亚洲福利视频专区| 香蕉成人啪国产精品视频综合网| 国模大胆一区二区三区| 欧美黄色视屏| 久久精品一二三区| 亚洲最新在线视频| 你懂的一区二区| 亚洲一区亚洲| 亚洲激情在线| 国产欧美日韩另类视频免费观看 | 国产日本欧洲亚洲| 欧美1区2区视频| 一区二区三区四区在线| 久久综合伊人77777| 一区二区电影免费在线观看| 国一区二区在线观看| 欧美激情性爽国产精品17p| 午夜精品在线观看| 日韩视频第一页| 女仆av观看一区| 久久狠狠亚洲综合| 亚洲图片欧美一区| 亚洲国产精品一区二区第四页av| 9色精品在线| 欧美成人一品| 久久久人成影片一区二区三区| 亚洲图色在线| 亚洲午夜精品久久久久久浪潮| 亚洲电影自拍| 伊人久久男人天堂| 国产午夜精品麻豆|