Go 实现 TLS server 及client (1, TLS简介)

本文是关于TLS安全协议的入门介绍,涵盖了单向和双向认证,以及如何在通信过程中升级到TLS。内容包括:1. 单向TLS不认证,2. 单向TLS认证,3. 双向TLS认证,4. 协议升级到TLS。通过实例解释了完整性保障和身份确认的重要性,介绍了非对称加密算法的概念,以及为何在实际通信中使用对称加密。
摘要由CSDN通过智能技术生成

本系列文章包含以下内容

  1. 单向TLS不认证,客户端不检查服务端证书的有效性
  2. 单向TLS认证,客户端检查服务端证书的有效性
  3. 双向TLS认证,服务端验证客户端证书的有效性
  4. 升级协议,在通信过程中升级成TLS通信

本系列文章中大写C统一表示客户端,大写S表示服务器端。

简介

TLS(Transport layer layer)是一种安全协议,目的为互联网通信提供安全及完整性保障

定义摘自维基百科。

完整性保障很容易理解,C(客户端)与S(服务器端)通信,客户端发出信息[转10000给张三],经过网络传输后,由于网络丢包变成了[转100块给张三],客户端估计会被张三揍哭。因此服务端(收到信息的一方)需要保证收到的信息确实一丝一毫都没变。这就是完整性。
保证完整性通常通过哈希值来实现。比如我们可以设计一种弱鸡的算法,计算字数的个数作为哈希,那么信息变成了[转10000块给张三,10],其中10就是哈希值,那么如果服务端收到的信息是[转100块给张三,10],服务端检查到哈希值不正确就知道消息在传输过程中发生了错误。然而如果信息变成了[转20000块钱给张三,10],这个弱鸡算法就不能帮助服务器检查到这个错误。因此哈希算法基础的要求就是碰撞(给定信息1,构造另一段信息2,使得2的哈希值与1相等)的难度。

什么是安全性呢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值