Http 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。
Https(全称:Hyper Text Transfer Protocol over Secure Socker Layer)是以安全为目标的Http通道,简单来说就是Http的安全版本。即Http加入SSL层,Https的安全基础是SSL,因此加密的详细内容就需要SSL。
其中响应消息(Status-Code)是一个三个数字的结果代码。Status-Code的第一个数字定义响应的类型,后两个数字没有分类的作用。如下 1xx:信息响应类,表示接收到请求并且继续处理。 2xx:处理成功响应类,表示动作被成功接收、连接和接收。 3xx:重定向响应类,为了完成指定的动作,必须接收进一步处理。 4xx:客户端错误,客户请求包含语法错误或者是不能正确执行。 5xx:服务端错误,服务器不能正确执行一个正确的请求。
其中Https和Http的区别主要为以下几点:1、https协议需要到CA申请证书,一般都是收费的2、http是超文本传输,明文方式传输,https则是安全的加密传输协议3、连接方式也不同,连接端口号不同,https443 http804、http连接是无状态的,https由SSL+Http协议构建的可加密传输、身份认证的网络协议。
Https的工作原理 1、客服端发起Https请求 2、服务端的配置 3、传送证书(就是公钥,包含许多信息如证书的颁布机构和过期时间) 4、客户端解析证书(用证书对该随机值加密) 5、传输加密信息(传送的是用证书加密后的随机值,目的是让服务端得到这个随机值,以后客户端和服务端的通信就通过这个随机值加密解密) 6、服务端解密信息(服务端用私钥解密后,得到客服端传过来的随机值,然后把内容通过该值进行对称加密,将信息和私钥通过某种算法混合在一起。只要加密算法够好,数据就够安全) 7、传输加密后的信息(这部分信息是服务端用私钥加密后的信息,可以在客户端被还原) 8、客户端解密信息(客户端用之前生成的私钥解密服务端传回来的信息)
ps: 编辑时,学习到一些其他内容RFC (Request for Comments)是一系列以编号排定的文件。基本的互联网通信协议都在RFC文件内有详细的说明,几乎所有的互联网标准都有收录在RFC文件中。
SSL协议如何对网络传输的信息保证是正确的,可以参考 百度百科SSL 里面用到的非对称加密RSA和对称加密的AES。一个比较好的例子是 上课传纸条的例子