1. C1->浏览器告知服务器自身的信息
  2. length = 165 a5
  3. 16 03 01 00 A0 01 00 00 9C 03 03 5E 1C 37 CD 40 [ ^ 7 @]
  4. B6 4A 9A 1A BC 43 85 2D 91 6E 24 D1 CB 98 D2 67 [ J C - n$ g]
  5. 30 7B B9 34 F6 34 14 51 89 62 26 00 00 16 C0 2B [0{ 4 4 Q b& +]
  6. C0 2F C0 0A C0 09 C0 13 C0 14 00 33 00 39 00 2F [ / 3 9 /]
  7. 00 35 00 0A 01 00 00 5D FF 01 00 01 00 00 0A 00 [ 5 ] ]
  8. 08 00 06 00 17 00 18 00 19 00 0B 00 02 01 00 00 [ ]
  9. 23 00 00 33 74 00 00 00 10 00 17 00 15 02 68 32 [# 3t h2]
  10. 08 73 70 64 79 2F 33 2E 31 08 68 74 74 70 2F 31 [ spdy/3.1 http/1]
  11. 2E 31 00 05 00 05 01 00 00 00 00 00 0D 00 16 00 [.1 ]
  12. 14 04 01 05 01 06 01 02 01 04 03 05 03 06 03 02 [ ]
  13. 03 04 02 02 02 [ ]
  14. S1->服务器下发证书、公钥和加密算法
  15. length = 706 2c2
  16. 16 03 01 00 4A 02 00 00 46 03 01 5A 27 B5 7C 7F [ J F Z' |]
  17. 22 90 0E 44 C7 1B 5E C2 9C C7 36 7D 98 4D 2B BE [" D ^ 6} M+ ]
  18. C6 22 A1 77 D2 05 C1 F6 DE 40 E3 20 DD 67 0B 73 [ " w @ g s]
  19. DB 42 F0 6E 0C BA 1C 10 8C 91 92 89 9D 71 BC 2D [ B n q -]
  20. BF 42 3F D4 5A EB 0A C4 F5 F6 F9 FB 00 35 00 16 [ B? Z 5 ]
  21. 03 01 02 65 0B 00 02 61 00 02 5E 00 02 5B 30 82 [ e a ^ [0 ]
  22. 02 57 30 82 01 C0 02 09 00 F4 8B D0 DD AC D8 6F [ W0 o]
  23. 34 30 0D 06 09 2A 86 48 86 F7 0D 01 01 05 05 00 [40 * H ]
  24. 30 70 31 0B 30 09 06 03 55 04 06 13 02 43 4E 31 [0p1 0 U CN1]
  25. 0B 30 09 06 03 55 04 08 13 02 53 48 31 0B 30 09 [ 0 U SH1 0 ]
  26. 06 03 55 04 07 13 02 53 48 31 0C 30 0A 06 03 55 [ U SH1 0 U]
  27. 04 0A 13 03 4E 42 45 31 0B 30 09 06 03 55 04 0B [ NBE1 0 U ]
  28. 13 02 52 44 31 0E 30 0C 06 03 55 04 03 13 05 6C [ RD1 0 U l]
  29. 69 75 79 69 31 1C 30 1A 06 09 2A 86 48 86 F7 0D [iuyi1 0 * H ]
  30. 01 09 01 16 0D 61 64 6D 69 6E 40 6E 62 65 2E 63 [ admin@nbe.c]
  31. 6F 6D 30 1E 17 0D 31 37 31 32 30 36 30 32 35 30 [om0 1712060250]
  32. 34 38 5A 17 0D 31 38 31 32 30 36 30 32 35 30 34 [48Z 18120602504]
  33. 38 5A 30 70 31 0B 30 09 06 03 55 04 06 13 02 43 [8Z0p1 0 U C]
  34. 4E 31 0B 30 09 06 03 55 04 08 13 02 53 48 31 0B [N1 0 U SH1 ]
  35. 30 09 06 03 55 04 07 13 02 53 48 31 0C 30 0A 06 [0 U SH1 0 ]
  36. 03 55 04 0A 13 03 4E 42 45 31 0B 30 09 06 03 55 [ U NBE1 0 U]
  37. 04 0B 13 02 52 44 31 0E 30 0C 06 03 55 04 03 13 [ RD1 0 U ]
  38. 05 6C 69 75 79 69 31 1C 30 1A 06 09 2A 86 48 86 [ liuyi1 0 * H ]
  39. F7 0D 01 09 01 16 0D 61 64 6D 69 6E 40 6E 62 65 [ admin@nbe]
  40. 2E 63 6F 6D 30 81 9F 30 0D 06 09 2A 86 48 86 F7 [.com0 0 * H ]
  41. 0D 01 01 01 05 00 03 81 8D 00 30 81 89 02 81 81 [ 0 ]
  42. 00 A7 46 00 8F 11 C0 C4 3D A8 88 56 40 2B 7F 99 [ F = V@+ ]
  43. CC 21 6E 5B C4 53 D9 4E 0A DC 10 1E A3 64 83 F2 [ !n[ S N d ]
  44. B6 33 A5 62 D3 5D 7A E3 38 DD FD 51 58 6F AE D4 [ 3 b ]z 8 QXo ]
  45. 8D F5 32 30 2C 4E 0F 2E 92 2F EE A3 98 07 2D CA [ 20,N . / - ]
  46. 8A 07 05 F3 1C 6B FC EE 35 E3 E2 77 B0 60 55 07 [ k 5 w `U ]
  47. 6B 81 F7 99 3A FA A3 AF 19 4C 27 10 02 28 D5 7D [k : L' ( }]
  48. 67 8B A8 E9 04 22 CB 95 56 D9 9B B7 6A 15 45 ED [g " V j E ]
  49. 54 19 13 15 E8 DA 99 25 06 21 07 95 A7 6C B5 D1 [T % ! l ]
  50. 59 02 03 01 00 01 30 0D 06 09 2A 86 48 86 F7 0D [Y 0 * H ]
  51. 01 01 05 05 00 03 81 81 00 68 61 4B A2 EC 7B CC [ haK { ]
  52. 0E 04 78 19 F4 B0 DE 09 86 9F D8 B0 2E DE AD C2 [ x . ]
  53. AF 76 12 79 80 0E F3 A3 50 01 D3 87 8C 4D 89 1D [ v y P M ]
  54. AD 1B 60 C3 4F 15 13 A3 C9 1B AB AA 72 29 45 77 [ ` O r)Ew]
  55. 49 FC 79 06 C5 79 D6 5D F1 09 46 5F 3F C3 AF ED [I y y ] F_? ]
  56. F1 24 1A 7C BA 1E 5B 1C FE AB B0 E7 8F 49 26 23 [ $ | [ I&#]
  57. C5 32 6F 17 53 8E 49 71 BF 54 FD AA 3B 03 AE EC [ 2o S Iq T ; ]
  58. C8 D8 90 12 AE C3 21 6D BE 24 B9 1D E6 DE 06 81 [ !m $ ]
  59. EA 70 91 CF 58 73 60 D2 14 16 03 01 00 04 0E 00 [ p Xs` ]
  60. 00 00 [ ]
  61. C2->浏览器用公钥加密传输密钥,上送给服务器
  62. length = 198 c6
  63. 16 03 01 00 86 10 00 00 82 00 80 30 04 3F FB AF [ 0 ? ]
  64. 54 7B 01 CE EC 7E 60 EC 48 62 14 4E DF 78 EC 90 [T{ ~` Hb N x ]
  65. E3 15 68 20 C6 E5 68 D5 2C B1 16 05 D7 3E F5 C8 [ h h , > ]
  66. 55 F8 41 BD 54 C5 B5 C9 36 21 B8 EE E0 F7 66 E7 [U A T 6! f ]
  67. 44 FA A8 95 5F 27 DB AB A8 81 45 36 11 D4 22 F2 [D _' E6 " ]
  68. 05 05 60 5A 7D 28 C8 1E 01 92 F5 A1 A1 BB 7C D7 [ `Z}( | ]
  69. 43 2C DE D9 F1 74 6B C7 97 85 DA C0 6D 16 B5 97 [C, tk m ]
  70. 68 0A 7E 63 EF 05 94 E7 3B E7 75 17 D2 2D D7 55 [h ~c ; u - U]
  71. 14 D9 42 96 3D 1E 1D DD EE 7D 90 14 03 01 00 01 [ B = } ]
  72. 01 16 03 01 00 30 CD 3B 22 66 59 E0 F6 68 87 D4 [ 0 ;"fY h ]
  73. 01 86 13 4D 7E 07 60 55 22 1C FB BC F7 C6 14 32 [ M~ `U" 2]
  74. 00 94 A9 42 FC 82 D3 FA 63 49 06 56 75 7F 89 CF [ B cI Vu ]
  75. F9 F2 EC 91 82 2B [ +]
  76. S2->服务器用私钥解开传输密钥,并给回应给浏览器
  77. length = 59 3b
  78. 14 03 01 00 01 01 16 03 01 00 30 C4 D9 08 B1 08 [ 0 ]
  79. 28 EC D5 64 55 00 E6 32 72 A7 3C B0 85 47 D4 E1 [( dU 2r < G ]
  80. 20 1F CD 71 D1 1C 24 44 19 77 94 F1 7C B9 E0 58 [ q $D w | X]
  81. D8 8F 2A D1 29 DD 77 F6 F0 24 F2 [ * ) w $ ]
  82. C2->用传输密钥加密信息,和服务器通信
  83. length = 490 1ea
  84. 17 03 01 00 20 13 7C 08 03 8A 88 EC 4E 92 2D 73 [ | N -s]
  85. 39 A6 06 46 9F 29 7C 0A AA 06 67 8B 2F 0B BF 98 [9 F )| g / ]
  86. 8C 95 C3 EF 16 17 03 01 01 C0 2D 04 CA E0 F9 A4 [ - ]
  87. 4D DB 77 49 5B 7A E8 B9 E2 E7 24 EA D6 07 33 35 [M wI[z $ 35]
  88. B4 9F EE 16 54 C0 06 AF FC 0A B1 25 F9 AE 8D B1 [ T % ]
  89. 61 C2 5E 9F 3A 8A 55 25 51 18 39 88 68 4F 25 05 [a ^ : U%Q 9 hO% ]
  90. 33 EB 1E 14 7B 73 57 B5 1D 1F 04 17 28 15 82 56 [3 {sW ( V]
  91. FF 9B 2E 3D 9E 9C 49 2D 93 66 E1 D1 A2 7B D2 22 [ .= I- f { "]
  92. C7 54 08 FE B3 E4 93 AC 36 78 B0 8E 34 54 48 73 [ T 6x 4THs]
  93. 72 9C 43 83 9B A6 06 3F 9B CA 97 10 FB 1F 20 A9 [r C ? ]
  94. 51 B1 F4 05 23 68 5B DF 06 C5 5D C8 7D D3 21 80 [Q #h[ ] } ! ]
  95. 29 BD 36 CC 11 73 D7 CE 4D 03 86 78 DF E5 65 66 [) 6 s M x ef]
  96. 0A 53 D5 A0 47 EA AC A7 60 59 BD 41 8C 99 A5 E8 [ S G `Y A ]
  97. 3B D5 56 91 75 D7 B1 C4 0E 5F 61 B7 29 6E 62 86 [; V u _a )nb ]
  98. F3 89 90 0F 86 A9 18 92 2E 94 E8 20 AA 3D 13 D1 [ . = ]
  99. EE 2C 59 03 D3 0E 22 02 F7 67 77 64 AB C1 31 82 [ ,Y " gwd 1 ]
  100. 33 D5 27 85 77 BC 1D 5D 8C 31 1F 6E 0B 43 7F E8 [3 ' w ] 1 n C ]
  101. E0 CD 95 7E 98 DA 50 1F 75 9C 9B 68 8B E5 77 6E [ ~ P u h wn]
  102. F5 2B B2 5D 47 04 67 9F FE 7D 6A E0 73 0D C6 A7 [ + ]G g }j s ]
  103. 52 4D 2E D7 9F 26 D6 48 97 E6 B9 22 1D E3 7C A4 [RM. & H " | ]
  104. 3C D7 BB 56 AF 29 2A FE 24 01 96 01 34 0F CF E9 [< V )* $ 4 ]
  105. E7 EF 9A 31 0A 90 CB A6 D4 79 CC 30 88 B2 F4 3D [ 1 y 0 =]
  106. 69 DA D1 F4 0D 8F 38 40 C1 48 5F 34 35 55 91 FA [i 8@ H_45U ]
  107. FD D5 DE 4A 12 EB 66 D1 C9 7C B0 7C 1D F6 1F 45 [ J f | | E]
  108. CA C3 7E 0C BE DB 92 37 9D D0 98 83 89 D3 24 1F [ ~ 7 $ ]
  109. 31 88 7E 8C 2D 29 0F D1 B3 D5 C6 6D 0E 6D 83 1A [1 ~ -) m m ]
  110. B2 0E 2E DF A1 D5 A2 6A 5B 80 A5 39 03 92 AD 89 [ . j[ 9 ]
  111. DE 7B E5 2F F6 85 B4 D1 98 1D 80 F6 7B 55 51 1A [ { / {UQ ]
  112. B6 72 21 B5 05 0C 22 58 10 7A B9 4C F4 FC 6C 82 [ r! "X z L l ]
  113. 67 FB E9 CE 33 65 AF 92 75 D4 DA D0 7A 11 91 AB [g 3e u z ]
  114. CC 0A 50 E8 C3 62 2D BB DD 60 [ P b- `]
  115. S2->用传输密钥加密信息,回应给浏览器 (是不是压缩了?)
  116. length = 213 d5
  117. 17 03 01 00 D0 3D 9F DD F5 C4 C2 11 E8 89 49 C7 [ = I ]
  118. 2E CF CF 73 74 36 D8 F2 01 F7 A6 FF 53 44 56 0A [. st6 SDV ]
  119. 72 6F A5 C5 96 0B FC AC CA B8 E3 D9 78 CE 28 3B [ro x (;]
  120. 49 3D 31 53 4C 3B 5E E0 C1 D8 6A A6 CA CB D5 0B [I=1SL;^ j ]
  121. E8 06 5B B4 99 38 59 EC D8 6E 39 88 32 FC FA 1B [ [ 8Y n9 2 ]
  122. 71 70 1D 41 E6 57 D5 41 CF E8 24 D1 6F CC E0 43 [qp A W A $ o C]
  123. 04 19 67 A4 D8 E4 4E 38 57 84 1D 3A 8F F3 84 E7 [ g N8W : ]
  124. 2D CD 1A 0B 5C D2 DB 3B 81 5D 89 C6 1F 53 BE 28 [- \ ; ] S (]
  125. C3 22 A8 60 26 25 8B 88 9F 43 F5 65 7D 92 B2 02 [ " `&% C e} ]
  126. FF 4D 22 F4 F5 31 FD 3D FA 69 EB 2B 8A 4C 96 9C [ M" 1 = i + L ]
  127. 0B C1 DE E4 F1 C8 DD 1B 75 86 58 EE 06 99 9F C1 [ u X ]
  128. 16 6F 41 88 CC 80 47 58 B4 12 06 85 D5 7C 25 47 [ oA GX |%G]
  129. 08 AE 78 0D F0 7C D6 B3 7D 4C 90 98 02 85 5E 9B [ x | }L ^ ]
  130. 6F F3 D0 94 FA [o ]
  1. #include <stdio.h>
  2. #include <Winsock2.h>
  3. #pragma comment(lib, "ws2_32.lib")
  4.  
  5. #define HEX_LINE 16
  6. void print_hex(char *data, int len)
  7. {
  8. printf("length = %d %x\n",len,len);
  9. int i,j;
  10. char *p = data;
  11. char vision[HEX_LINE+1];
  12. int seg;
  13. for(i=0;i<len;i+=HEX_LINE)
  14. {
  15. seg = i+HEX_LINE > len ? len - i : HEX_LINE;
  16. memset(vision,0,sizeof(vision));
  17. memcpy(vision,p+i,seg);
  18. for(j=0;j<seg;j++){
  19. printf("%02X ",(unsigned char)vision[j]);
  20. if(vision[j]<0x20) vision[j] = ' ';
  21. }
  22.  
  23. printf("[%s]\n",vision);
  24. }
  25.  
  26. }
  27.  
  28. int main()
  29. {
  30. WORD wVersionRequested;
  31. WSADATA wsaData;
  32. int err;
  33.  
  34. wVersionRequested = MAKEWORD( 1, 1 );
  35.  
  36. err = WSAStartup( wVersionRequested, &wsaData );
  37. if ( err != 0 ) {
  38. return 0;
  39. }
  40.  
  41. if ( LOBYTE( wsaData.wVersion ) != 1 ||
  42. HIBYTE( wsaData.wVersion ) != 1 ) {
  43. WSACleanup( );
  44. return 0;
  45. }
  46. SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);
  47.  
  48. SOCKADDR_IN addrSrv;
  49. addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
  50. addrSrv.sin_family=AF_INET;
  51. addrSrv.sin_port=htons(8080);
  52.  
  53. bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));
  54.  
  55. listen(sockSrv,5);
  56.  
  57. SOCKADDR_IN addrClient;
  58. int len=sizeof(SOCKADDR);
  59.  
  60. SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);
  61. SOCKADDR_IN addrSrvClient;
  62. addrSrvClient.sin_addr.S_un.S_addr=inet_addr("172.28.250.184");
  63. addrSrvClient.sin_family=AF_INET;
  64. addrSrvClient.sin_port=htons(1443);
  65. connect(sockClient,(SOCKADDR*)&addrSrvClient,sizeof(SOCKADDR));
  66.  
  67. SOCKET sockConn=accept(sockSrv,(SOCKADDR*)&addrClient,&len);
  68.  
  69. char recvBuf[1500];
  70. int recvLen = recv(sockConn,recvBuf,1500,0);
  71. printf("C1->浏览器告知服务器自身的信息\n");
  72. print_hex(recvBuf,recvLen);
  73. send(sockClient,recvBuf,recvLen,0);
  74. recvLen = recv(sockClient,recvBuf,1500,0);
  75. printf("S1->服务器下发证书、公钥和加密算法\n");
  76. print_hex(recvBuf,recvLen);
  77. send(sockConn,recvBuf,recvLen,0);
  78.  
  79. //2.接收对称密钥
  80. printf("C2->浏览器用公钥加密传输密钥,上送给服务器\n");
  81. recvLen = recv(sockConn,recvBuf,1500,0);
  82. print_hex(recvBuf,recvLen);
  83. send(sockClient,recvBuf,recvLen,0);
  84. recvLen = recv(sockClient,recvBuf,1500,0);
  85. printf("S2->服务器用私钥解开传输密钥,并给回应给浏览器\n");
  86. print_hex(recvBuf,recvLen);
  87. send(sockConn,recvBuf,recvLen,0);
  88.  
  89. //3.数据传输
  90. printf("C2->用传输密钥加密信息,和服务器通信\n");
  91. recvLen = recv(sockConn,recvBuf,1500,0);
  92. print_hex(recvBuf,recvLen);
  93. send(sockClient,recvBuf,recvLen,0);
  94. recvLen = recv(sockClient,recvBuf,1500,0);
  95. printf("S2->用传输密钥加密信息,回应给浏览器\n");
  96. print_hex(recvBuf,recvLen);
  97. send(sockConn,recvBuf,recvLen,0);
  98.  
  99. closesocket(sockConn);
  100. closesocket(sockClient);
  101. return 0;
  102. }

https传输过程嗅探的更多相关文章

  1. 浅谈HTTPS传输过程

    HTTPS是什么 HTTPS不是一个新的协议,可以理解为是一个HTTP协议的加密"版本"(HTTP+SSL(TLS)).那为什么HTTP协议需要加密,不加密会出现什么问题呢?先来了 ...

  2. HTTPS加密传输过程

    HTTPS加密传输过程 HTTPS全称Hyper Text Transfer Protocol over SecureSocket Layer,是以安全为目标的HTTP通道,在HTTP的基础上通过传输 ...

  3. SSL、TLS协议格式、HTTPS通信过程、RDP SSL通信过程

    相关学习资料 http://www.360doc.com/content/10/0602/08/1466362_30787868.shtml http://www.gxu.edu.cn/college ...

  4. 中间人攻击破解HTTPS传输内容

    最近App安全受到不小的關注,有人問我,說某某App不安全,究竟是真的還假的啊...所謂有被攻擊的風險,是不是危言聳聽,只是為了嚇人來著的? 現在就來為各位說明一下,是怎麼個不安全法.就來說說攻擊是怎 ...

  5. 转: 数字证书原理 https 完整过程解析

    点评: 讲的非常的详细与全面,值得一看. 转: http://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html 文中首先解释了加密解 ...

  6. HTTPS反向代理嗅探

    两年前的文章,一直在本地笔记放着,发现博客上竟然没存.发出来. 先说说什么是SSL:     SSL是Secure Socket Layer的简称,中文意思是安全套接层,由NetScape公司开发,用 ...

  7. HTTPS 传输优化详解之动态 TLS Record Size

    笔者在过去分析了诸多可以减少 HTTPS 传输延迟的方法,如分布式 Session 的复用: 启用 HSTS,客户端默认开启 HTTPS 跳转:采用 HTTP/2 传输协议:使用 ChaCha20-P ...

  8. Ajax中的JSON格式与php传输过程的浅析

    在Ajax中的JSON格式与php传输过程中有哪些要注意的小地方呢? 先来看一下简单通用的JSON与php传输数据的代码 HTML文件: <input type="button&quo ...

  9. 网络学习day02_OSI七层模型及数据的传输过程

    title: 2018.9.2 OSI七层模型及数据的传输过程 tags: 计算机网络, OSI七层模型, 数据传输, 数据解封装 --- OSI七层模型和TCP/IP五层模型 OSI七层模型 我们说 ...

随机推荐

  1. day13 多个装饰器叠加 生成式

    1.装饰器剩余 from functions import wraps @wrap(func) 会把func内的自带方法赋给wrapper,这样wrapper装饰函数就和原函数一模一样 多个装饰器叠加 ...

  2. java使用正则表达式

    package com.regexp; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Tes ...

  3. 能判断是电脑端还是手机端的javascript

    <script language="javascript"> //平台.设备和操作系统 var system ={ win : false, mac : false, ...

  4. js异步导致的错误

    没想到jquery的$.each也是异步,本身是循环验证数据,然后再提交数据,但是发现验证和提交一起发生了. 技术还不到位,所以 在定义了一个变量,var step = 0; 每循环一次step自增, ...

  5. pta l3-20(至多删三个字符)

    题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805046946938880 题意:给定一个长度<=106 ...

  6. 第十一章 串 (c1)KMP算法:从记忆力到预知力

  7. AltiumDesigner 网络标号放置技巧

    我们在使用AD画图的过程中,灵活的使用一些小技巧可以使我们的工作事半功倍,今天给大家介绍一种在画原理图过程中的小技巧. 我们在画原理图过程中经常会放置网络标号,尤其是很多芯片管脚上,例如现在我需要在这 ...

  8. synchronized细节问题(一)

    synchronized锁重入: 关键字synchronized拥有锁重入的功能,也就是在使用synchronized时,当一个线程得到一个对象的锁后,再次请求此对象时是可以再次得到该对象的锁. 下面 ...

  9. vue 使用a+ router.push的形式跳转时,地址栏不显示参数

    解决办法: a链接不要写href 属性

  10. CodeForces - 55D(数位dp,离散化)

    题目来源:http://codeforces.com/problemset/problem/55/D Volodya is an odd boy and his taste is strange as ...