
专业理论基础
zane_aimingoo
给自己3年时间,珍惜此刻的时光.
发生不好的事情,这不是正常的吗。
发生好的事情,这是我的福气。
展开
-
TCP的三次握手与四次挥手理解(官方与通俗)
TCP的三次握手TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 (1)第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。 (2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入...转载 2019-12-30 15:20:47 · 2907 阅读 · 0 评论 -
SSL 版本 和 TSL 版本 问题合集
解决 The client and server can not communicate, because they do not possess a common algorithm 问题转载 2019-12-20 20:34:35 · 1932 阅读 · 0 评论 -
HTTP和HTTPS协议 (精华篇)
一、前言:先来观察这两张图,第一张访问域名http://www.12306.cn,谷歌浏览器提示不安全链接,第二张是https://kyfw.12306.cn/otn/regist/init,浏览器显示安全,为什么会这样子呢?2017年1月发布的Chrome 56浏览器开始把收集密码或信用卡数据的HTTP页面标记为“不安全”,若用户使用2017年10月推出的Chrome...转载 2019-12-19 19:32:16 · 264 阅读 · 0 评论 -
Http和Https的区别(面试常考题)
无论是在校学习还是找工作的时候,老师和面试官都问过同学http和https的区别。平时上网的时候也没有关注这个问题,只是知道计算机网络里Http的概念,所以最近才查资料好好补补这一块。其实这一块的知识延伸很广,如果之前不太了解加密算法和SSL协议,可以在学习了这个问题的基础上再做研究。一、Http和Https的基本概念Http:超文本传输协议(Http,HyperText Transf...转载 2019-12-19 15:35:51 · 529 阅读 · 0 评论 -
深入浅出HTTPS基本原理
基础知识准备:在了解HTTPS的基本原理之前,需要先了解如下的基本知识。一、什么是HTTPS,TLS,SSL HTTPS,也称作HTTP over TLS。TLS的前身是SSL,TLS 1.0通常被标示为SSL 3.1,TLS 1.1为SSL 3.2,TLS 1.2为SSL 3.3。下图描述了在TCP/IP协议栈中TLS(各子协议)和HTTP的关系。二、...转载 2019-12-19 15:34:10 · 279 阅读 · 0 评论 -
https和http的主要区别
HTTPS和HTTP的区别主要如下:1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进...转载 2019-12-19 10:35:59 · 292 阅读 · 0 评论 -
CR, LF, CR/LF区别与关系
一:回车”(Carriage Return)和“换行”(Line Feed)起源首先,弄清两个概念“回车CR-将光标移动到当前行的开头。换行LF-将光标“垂直”移动到下一行。(而并不移动到下一行的开头,即不改变光标水平位置)在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33,Linux/Unix下的tty概念也来自于此)的玩意,每秒钟可以打10个字符。但是它有一个...转载 2019-12-18 19:32:27 · 214 阅读 · 0 评论 -
网络编程懒人入门系列目录集合
原文链接:https://yq.aliyun.com/articles/633630收起本文原作者:“水晶虾饺”,原文由“玉刚说”写作平台提供写作赞助,原文版权归“玉刚说”微信公众号所有,即时通讯网收录时有改动。1、引言好多小白初次接触即时通讯(比如:IM或者消息推送应用)时,总是不能理解Web短连接(就是最常见的HTTP通信了)跟长连接(主要指TCP、UDP协议实现的soc...转载 2019-12-12 13:47:48 · 250 阅读 · 0 评论 -
HTTP协议之chunk介绍
当客户端向服务器请求一个静态页面或者一张图片时,服务器可以很清楚的知道内容大小,然后通过Content-Length消息首部字段告诉客户端需要接收多少数据。但是如果是动态页面等时,服务器是不可能预先知道内容大小,这时就可以使用Transfer-Encoding:chunk模式来传输数据了。即如果要一边产生数据,一边发给客户端,服务器就需要使用"Transfer-Encoding: chunked"...转载 2019-12-05 13:43:50 · 447 阅读 · 0 评论 -
Chunk——分块传输(了解协议)——TCP/IP协议:最大报文段长度(MSS)是如何确定的
TCP提供的是一种面向连接的,可靠的字节流服务,TCP提供可靠性的一种重要的方式就是MSS。通过MSS,应用数据被分割成TCP认为最适合发送的数据块,由TCP传递给IP的信息单位称为报文段或段(segment)。代表一个TCP socket的结构体struct tcp_sock中有多个成员用于确定应用数据被分割成最大为多大的数据块较为合适(最大报文段长度MSS)。用户在使用路由器访问...转载 2019-11-27 14:27:53 · 1738 阅读 · 0 评论 -
Chunk——分块传输(了解概念) transfer-encoding:chunked的含义
Transfer-Encoding: chunked 表示输出的内容长度不能确定,普通的静态页面、图片之类的基本上都用不到这个。但动态页面就有可能会用到,但我也注意到大部分asp,php,asp.net动态页面输出的时候大部分还是使用Content-Length,没有使用Transfer-Encoding: chunked。不过如果结合:Content-Encoding: gzip...转载 2019-11-27 14:24:59 · 3093 阅读 · 0 评论 -
关于HTTP协议的分块传输技术:Transfer-Encoding: chunked
问题背景:在workerman官方社区有网友提出了这么一个问题,大体意思是在一次HTTP请求中服务端返回的body体中"多了一些看似奇怪的字符",详见:https://wenda.workerman.net/question/3465问题原因:"多了一些看似奇怪的字符",既然我用引号引起来了,说明这些字符并不奇怪,为什么?因为这是HTTP协议的规范,具体就是用到了HTTP...转载 2019-11-25 19:57:08 · 1357 阅读 · 0 评论 -
Encrypt 和 Decrypt 加密--解密
[例句]In order to encrypt and decrypt, you need an encryption algorithm and a key.为了进行加密和解密,您需要加密算法和密钥。 数据加密数据加密利用密码技术对信息进行加密,实现信息的隐蔽,从而起到保护信息安全的作用。它通过加密算法和加密秘钥将原来是明文的文件或数据进行处理,使其成文不可读的一段代码,...转载 2019-02-20 16:54:47 · 25177 阅读 · 0 评论 -
加密解密常见问题集合(四)
常见问题一:数字签名要预先使用单向Hash函数进行处理的原因是什么?HASH(摘要)函数提供了这样一种计算过程:输入一个长度不固定的字符串,它会返回一串固定长度的字符串,又称HASH值(摘要值)。单向HASH函数用于产生信息摘要。 HASH函数主要可以解决以下两个问题:在某一特定的时间内,无法查找经HASH操作后生成特定HASH值的原报文;也无法查找两个经HASH操作后生成相同HASH值...转载 2018-12-27 13:36:24 · 1263 阅读 · 0 评论 -
RSA加密/解密和签名/验签过程理解(三)
简明清晰,但是只有在理解前面(一)(二)的前提下,你才能更清晰的理解(三),否则刚开始看(三),你可能觉得理解了,但是实际上还是很模糊。这里将A理解为客户端,B理解为服务端,可以比较好理解.加解密过程简述A和B进行通信加密,B要先生成一对RSA密钥,B自己持有私钥,给A公钥 --->A使用B的公钥加密要发送的内容,然后B接收到密文后通过自己的私钥解密内容签名验签过程简述A给B...转载 2018-12-27 10:55:39 · 405 阅读 · 0 评论 -
RSA加密、解密、签名、验签的原理及方法(二)
一、RSA加密简介 RSA加密是一种非对称加密。可以在不直接传递密钥的情况下,完成解密。这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程,分别称为公钥和私钥。两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。通常个人保存私钥,公钥是公开的(可能同时多人持有)。 二、RSA加密、签名区别 加密和签名...转载 2018-12-27 10:45:18 · 391 阅读 · 0 评论 -
对称加密和非对称加密(一)初步理解
先查大范围 专业术语 再查小范围 便于理解 宏观概念然后针对小范围的点,去精准查询 理解细节 一、面临的问题: 密钥分发在加密算法之外,面临一个问题,那就是:秘钥的分发。就是说,解密方如何获得加密方的秘钥呢? 从而出现了:对称加密和非对称加密。二、对称加密和非对称加密1. 对称加密对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,...转载 2018-12-26 23:23:21 · 79240 阅读 · 30 评论 -
Json.net实现方便的Json转C#(dynamic动态类型)对象
Json.net实现方便的Json转C#(dynamic动态类型)对象以前需要将一段json字符串转换为C#对象时,一般都是定义一个与之对应的实体类来接收。这样做有一个很大的缺点,就是当字符串特别长,属性特别多,又有嵌套时,手敲这个实体类就非常痛苦。比如之前做的一个接收百度七天天气预报的API,层层嵌套,很痛苦。C# 4.0 之后有了动态类型dynamic。用这个东西配合Json.ne...转载 2018-12-21 16:04:53 · 365 阅读 · 0 评论 -
初步理解Rest/Restful (三)
REST是英文representational state transfer(表象性状态转变)或者表述性状态转移;Rest是web服务的一种架构风格;使用HTTP,URI,XML,JSON,HTML等广泛流行的标准和协议;轻量级,跨平台,跨语言的架构设计;它是一种设计风格,不是一种标准,是一种思想 Rest架构的主要原则 网络上的所有事物都被抽象为资源 每个资源都有一个唯一的资...转载 2018-12-06 16:55:32 · 243 阅读 · 0 评论 -
初步理解 什么是REST和RESTful?(二)
REST风格的接口, 就是用URL定位资源,用HTTP描述操作。 知乎大神Ivony有句话说的好: URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作。 咱们不解释REST是哪几个单词的首字母,说了也不知道,翻译成中文就是表现层状态转移,我是弄不懂。 在设计web接口的时候,REST主要是用于定义接口名,接口名一般是用名次写,...转载 2018-12-06 16:53:56 · 221 阅读 · 0 评论 -
初步理解 REST软件架构简介(一)
REST软件架构REST软件架构当中最重要的两个理念:它不仅仅能够对于互联网资源进行唯一定位, 而且还能告诉我们对于该资源进行怎样运作。 REST软件架构是由Roy Thomas Fielding博士在2000年首次提出的。他为我们描绘了开发基于互联网的网络软件的蓝图。REST软件架构是一个抽象的概念,是一种为了实现这一互联网的超媒体分布式系统的行动指南。利用任何的技术都可...转载 2018-12-06 16:52:39 · 723 阅读 · 0 评论 -
浏览器是什么? (类似socket客户端)
浏览器是什么?答:渲染核心:负责对网页语法的解释(如HTML、JavaScript)并渲染(显示)网页。 把用户的操作封装成请求报文,发送给后台服务器,并接受后台服务器返回的内容。网页浏览器(英语:web browser),常被简称为浏览器,是一种用于检索并展示万维网信息资源的应用程序。这些信息资源可为网页、图片、影音或其他内容,它们由统一资源标志符标志。信息资源中的超链接可使用户方便...转载 2018-12-12 22:25:12 · 1848 阅读 · 0 评论 -
HTTP协议漫谈
HTTP协议漫谈 简介 本篇文章不会对HTTP的细节进行深究,而是从够高和更结构化的角度将HTTP协议的元素进行分类讲解。 HTTP的定义和历史 在一个网络中。传输数据需要面临三个问题: 1. 客户端如何知道所请求内容的位置? 2. 当客户端知道所请求内容的位置后,如何获取所请求的内容? 3. 所请求内容以何种形式组织以便被客户端所识别? 对于...转载 2018-12-10 09:13:05 · 205 阅读 · 0 评论 -
http1. 基础概念篇
http1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版...转载 2018-12-10 09:11:11 · 386 阅读 · 0 评论 -
HTTP常见面试题
HTTP常见面试题2018年12月8日 之前大致了解过一些,但是发现很多细节之处存在疑惑,所以再次学习理解。Http与Https的区别:Http与Https的区别:HTTP 的URL 以http:// 开头,而HTTPS 的URL 以https:// 开头 HTTP 是不安全的,而 HTTPS 是安全的 HTTP 标准端口是80 ,而 HTTPS 的标准端口是443 在OS...转载 2018-12-09 20:47:38 · 212 阅读 · 0 评论 -
网络编程懒人入门(三):快速理解TCP协议一篇就够
网络编程懒人入门(三):快速理解TCP协议一篇就够 TCP 协议简介 TCP 是互联网核心协议之一,本文介绍它的基础知识。一、TCP 协议的作用互联网由一整套协议构成。TCP 只是其中的一层,有着自己的分工。(图片说明:TCP 是以太网协议和 IP 协议的上层协议,也是应用层协议的下层协议。)最底层的以太网协议(Ethernet)规定了电子信号如何组成数据包...转载 2018-11-29 15:11:32 · 339 阅读 · 0 评论 -
网络编程懒人入门(二):快速理解网络通信协议(下篇)
网络编程懒人入门(二):快速理解网络通信协议(下篇) ==============================================================互联网协议入门(二)(接上文)七、一个小结先对前面的内容,做一个小结。我们已经知道,网络通信就是交换数据包。电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从而实现两台电脑之间的通...转载 2018-11-27 23:22:02 · 173 阅读 · 0 评论 -
网络编程懒人入门(一):快速理解网络通信协议(上篇)
网络编程懒人入门(一):快速理解网络通信协议(上篇) 我们每天使用互联网,你是否想过,它是如何实现的?全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和...转载 2018-11-27 11:08:43 · 356 阅读 · 0 评论 -
最全的数据结构解析与归纳
最全的数据结构解析与归纳转载 2016年09月20日 13:55:0724492本文对常用的数据结构:Array, ArrayList,List,IList,ICollection, Stack, Queue, HashTable, Dictionary, IQueryable, IEnumerable等进行详述。一、Collec转载 2017-12-20 20:54:25 · 3696 阅读 · 0 评论