HTTPS Knowledge

HTTPS

一、加密

  1. HTTPS的通信过程中只在握手阶段使用了非对称加密,后面的通信过程 均使用的是对称加密,尽管非对称加密相比对称加密更加安全,但也存在两个明显的缺点:
    1. CPU的计算资源消耗非常大,一次完全TSL握手,密钥交换时的非对称解密计算量占整个握手过程的90%以上,而对称加密的计算量只相当于非对称加密的0.1%,如果应用层数据也使用非对称加解密,性能开销很大,无法承受;
    2. 非对称加密算法对加密的内容长度有限制,不能超过公钥长度,比如现在的常用的公钥长度是2048位,意味着待加密内容不能超过256个字节;
    3. 所以公钥加密目前只能用来做密钥交换或者内容签名,不适合用作应用层传输内容的加解密
  2. HTTPS如何保证安全
    1. 服务器可以先将非对称加密的公钥发给客户端,客户端就可以使用非对称加密的公钥加密对称加密的密钥了,然后将这个密钥发给服务器,此时服务器就持有对称加密的公钥,双方就可以通信了,所以非对称加密可以很好的管理对称加密的密钥,保证每次数据加密的密钥都不相同,这样的及时客户端病毒拉取到通信的缓存信息,也无法窃取到通信内容;
    2. 若是在通信过程中,在三次握手或者客户端发起HTTP请求的过程中,客户端被中间人劫持,那么中间人就很容易伪装,和客户端和服务器通信,所以就出现了数字证书,
    3. 服务器首先生成公私钥,把公钥提供给相关机构CA,CA将公钥放入数字证书并将数字证书颁布给服务器,此时服务器就可以将数字证书给客户端,数字证书中不仅仅只有公钥还加入了一些签名机制,保证数字证书一定是服务器发给客户端的;
    4. 综合以上三点:非对称加密算法(公钥和私钥)交换对称密钥+数字证书验证身份(也就是公钥是不是假的)+利用对称加密加解密后传输数据信息

二、TSL/SSL

2.1 TSL/SSL定义
  1. SSL(Secure Socket Layer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:SSL记录协议和SSL握手协议。
  2. TLS:(Transport Layer Security,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。该协议由两层组成:TLS记录协议和TLS握手协议。
2.2 TSL/SSL运行过程
  1. 运行的过程:SSL/TSL协议采用的事公钥加密法(也就是使用的非对称加密,目前大部分使用的是RSA),客户端先向服务器索要公钥,然后使用公钥加密,服务器收到密文后采用私钥解密
  2. 索要到的公钥是采用的数字证书的方式,这个里面不仅仅包含了公钥而且加入了一些签名,保证了公钥的安全;而后面的每一次会话客户端和服务器都生成一个对话密钥来加密,此种方式是堆成加密大大减低了运算量;
  3. SSL/TLS协议的基本过程是这样的:
    1. 客户端向服务器端索要并验证公钥。
    2. 双方协商生成"对话密钥"。
    3. 双方采用"对话密钥"进行加密通信。
2.3 TSL/SSL区别
  1. 最新版本的TLS(Transport Layer Security,传输层安全协议)是IETF(Internet Engineering Task Force,Internet工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本。在TLS与SSL3.0之间存在着显著的差别,主要是它们所支持的加密算法不同,所以TLS与SSL3.0不能互操作。

三、对称加密和非对称加密

3.1 对称加密

  1. 对称加密:加密和解密使用相同的密钥的算法,它要求发送方和接收方通信前商定一个对称密钥,对称算法的安全性完全依赖于密钥;
  2. 对称加密分为两种模式,流加密和分组加密
  3. 流加密:将消息作为字节流对待,并且使用数学函数分别作用在每一个字节位上。使用流加密时,每加密一次,相同的明文位会转换成不同的密文位。流加密使用了密钥流生成器,它生成的字节流与明文字节流进行异或,从而生成密文。
  4. 分组加密:是将消息划分为若干个分组,这些分组随后会通过数学函数进行处理,每次一个分组;比较常用的分组加密算法有DES、3DES、AES。其中DES是比较老的加密算法,现在已经被证明不安全。而3DES是一个过渡的加密算法,相当于在DES基础上进行三重运算来提高安全性,但其本质上还是和DES算法一致。而AES是DES算法的替代算法,是现在最安全的对称加密算法之一。
  5. DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。
  6. 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。
  7. AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高;
  8. AES算法理解:AES 算法基于排列和置换运算。排列是对数据重新进行安排,置换是将一个数据单元替换为另一个。AES 使用几种不同的方法来执行排列和置换运算。AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换和替换输入数据
  9. 对称加密的优点:计算量小,加密速度快,加密效率高
  10. 对称加密的缺点:
    1. 交易双方都使用同样密钥,安全性得不到保障
    2. 每次使用对称加密算法时,都需要使用其他人不知道的唯一密钥,这使得双方所拥有的密钥数量呈几何级数增长,密钥管理成为负担;

3.2 非对称加密

  1. 非对称密钥交换算法本身非常复杂,密钥交换过程涉及到随机数生成,模指数运算,空白补齐,加密,签名等,一系列及其复杂的过程;
  2. 官方的定义:公开密钥加密(英语:public-key cryptography,又译为公开密钥加密),也称为非对称加密(asymmetric cryptography),一种密码学算法类型,在这种密码学方法中,需要一对密钥(其实这里密钥说法不好,就是“钥”),一个是私人密钥,另一个则是公开密钥。这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。因此如果公开了一对密钥中的一个,并不会危害到另外一个的秘密性质。称公开的密钥为公钥;不公开的密钥为私钥。
  3. 常见的非对称加密算法:
    1. RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的;
    2. DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准);
    3. ECC(Elliptic Curves Cryptography):椭圆曲线密码编码学。

3.3 HASH算法

  1. Hash算法特别的地方在于它是一种单向算法,用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值,却不能通过这个Hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。
  2. 常见的Hash算法有MD2、MD4、MD5、HAVAL、SHA

四、HTTP与HTTPS的区别

  1. https需要到CA申请证书,一般免费证书很少都需要交费;
  2. http是超文本传输协议,信息是以明文传输,https是具有 安全性的ssl/tls加密的传输协议;
  3. http和https使用的是完全不同的连接方式,且默认的连接端口也是不一样的,http默认80,https默认443;
  4. http的连接很简单,是无状态的,https协议是由ssl+http协议构建的可进行加密传输,身份认证的网络协议,比http协议安全;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269

推荐阅读更多精彩内容