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

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 閱讀(2900) 評論(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>
            亚洲影音一区| 夜夜精品视频| 性视频1819p久久| 亚洲黄色免费网站| 国产一区二区三区在线观看精品 | 国产精品一卡二卡| 欧美美女bb生活片| 蜜桃av噜噜一区| 久久久国产精彩视频美女艺术照福利| 亚洲一级二级| 在线中文字幕一区| 亚洲精品裸体| 亚洲高清二区| 欧美韩日一区二区| 欧美jizzhd精品欧美巨大免费| 久久精品视频免费| 久久国产婷婷国产香蕉| 欧美一区二区日韩| 午夜在线一区| 校园激情久久| 欧美一区二区三区久久精品茉莉花| 一级日韩一区在线观看| 亚洲理论在线观看| 亚洲美女在线观看| 亚洲伦伦在线| 中文国产成人精品| 亚洲一区二区三区高清不卡| 一区二区三区|亚洲午夜| 亚洲乱码国产乱码精品精98午夜| 亚洲欧洲日夜超级视频| 91久久一区二区| 亚洲免费精品| 亚洲小视频在线| 亚洲欧美怡红院| 欧美在线视频一区| 久久午夜国产精品| 免费在线亚洲| 亚洲国产视频直播| 日韩亚洲不卡在线| 亚洲一区在线播放| 欧美在线黄色| 免费观看欧美在线视频的网站| 免费高清在线视频一区·| 欧美电影资源| 欧美调教视频| 国产亚洲欧美色| 亚洲丶国产丶欧美一区二区三区| 91久久在线视频| 亚洲特色特黄| 久久九九免费| 欧美激情第4页| 亚洲免费成人av电影| 亚洲天堂av在线免费观看| 午夜亚洲视频| 欧美a级大片| 欧美性猛交99久久久久99按摩 | 91久久精品国产91性色| 99re66热这里只有精品4| 亚洲欧美日韩高清| 久久亚洲精品伦理| 亚洲精品视频二区| 亚洲欧美日韩在线观看a三区| 久久久999| 欧美日韩综合网| 国产综合色在线| 99国产精品99久久久久久| 欧美亚洲视频一区二区| 美女主播一区| 一区二区日韩伦理片| 久久久国产精彩视频美女艺术照福利| 欧美不卡高清| 国产一区二区三区的电影 | 尤妮丝一区二区裸体视频| 亚洲精品国产拍免费91在线| 亚洲欧美日韩综合| 欧美国产欧美综合| 亚洲一二三四区| 欧美成人免费va影院高清| 国产伦精品一区二区三区免费 | 狠狠综合久久av一区二区小说| 亚洲精品黄色| 久久精品日产第一区二区| 亚洲精品国产日韩| 久久激情五月激情| 国产精品毛片在线看| 亚洲国产一区二区在线| 欧美亚洲免费电影| 亚洲精品三级| 久久综合给合| 国产日韩精品在线观看| 一区二区三区国产| 欧美激情按摩在线| 欧美在线看片a免费观看| 欧美午夜片欧美片在线观看| 亚洲国产黄色| 久久久久五月天| 亚洲一区二区精品在线观看| 欧美激情久久久久久| 在线观看精品一区| 久久成人免费网| 亚洲一区二区三区在线播放| 欧美日本韩国| 亚洲国产综合视频在线观看| 久久人人爽国产| 亚洲欧美影院| 国产精品主播| 香蕉国产精品偷在线观看不卡| 亚洲青色在线| 欧美大秀在线观看| 1000部国产精品成人观看| 久久久久久久久岛国免费| 亚洲欧美日韩爽爽影院| 国产精品国产三级国产普通话99| 亚洲精品在线免费| 亚洲成在线观看| 免费欧美在线视频| 亚洲国产成人久久综合| 久热精品视频| 久久精品亚洲精品| 一区二区三区在线高清| 久久综合99re88久久爱| 久久精品免费看| 尤物精品在线| 欧美福利一区二区| 麻豆精品精华液| 亚洲三级免费观看| 亚洲精品1区2区| 欧美日韩国产在线看| 这里只有精品丝袜| 一本久道久久综合中文字幕 | 久久精品国产96久久久香蕉| 亚洲欧美日韩国产综合在线| 国产毛片精品视频| 久久精品中文| 久久综合伊人77777蜜臀| 亚洲国产精品一区在线观看不卡| 欧美高清视频一区| 欧美大片91| 中文久久精品| 亚洲一区二区不卡免费| 国产一区二区三区久久精品| 久久综合九色综合久99| 免费亚洲电影| 亚洲婷婷综合久久一本伊一区| 亚洲视频电影在线| 国产一区二区三区在线免费观看| 久久这里有精品视频| 欧美成人小视频| 亚洲宅男天堂在线观看无病毒| 亚洲欧美日本国产有色| 精品成人在线观看| 亚洲激情国产| 国产精品羞羞答答| 老司机午夜精品视频在线观看| 欧美不卡在线视频| 亚洲欧美三级在线| 久久久久久久久久看片| 日韩视频在线观看| 亚洲欧美在线免费| 亚洲国产高清视频| 一区二区不卡在线视频 午夜欧美不卡'| 国产精品一区二区黑丝| 免费日韩成人| 国产精品极品美女粉嫩高清在线 | 久久久国产精品一区| 牛人盗摄一区二区三区视频| 亚洲网站在线播放| 久久精品一二三区| 一区二区三区四区五区在线| 欧美一区二区三区免费看| 亚洲人成久久| 亚洲欧美偷拍卡通变态| 亚洲人在线视频| 亚洲欧美另类中文字幕| 亚洲精品一区二区三区在线观看 | 欧美精品成人| 久久国内精品视频| 欧美精品999| 久久夜色精品亚洲噜噜国产mv| 欧美日韩高清不卡| 久久久久久欧美| 国产精品a级| 欧美激情视频给我| 国产日韩欧美精品一区| 亚洲激情另类| 在线观看福利一区| 亚洲免费影院| 在线综合+亚洲+欧美中文字幕| 久久视频在线免费观看| 欧美一区二区精品久久911| 欧美国产精品劲爆| 免费观看国产成人| 国产乱码精品一区二区三区五月婷| 亚洲激情网站| 在线播放中文字幕一区| 亚洲欧美在线看| 亚洲一区二区三区影院| 欧美福利视频网站| 欧美大片免费久久精品三p | 久久夜色精品国产亚洲aⅴ|