Go 实现 TLS server 及client (2, 公钥证书)

上一篇TLS简介

本文中假定C需要验证S的身份。

上一篇中提到了C和S如何互相证明我是我的问题,并且提到了非对称密钥算法。我们提到,在S与C的发起通信时,S要向C证明自己是自己,需要先给C一份公钥,并且C已经相信这是S的公钥。C发送给S的凭证称为公钥证书

在内部网络中,C已经相信这是S的公钥可以通过网络管理员预先将S的证书放置到C的基础信任集合里来保证。但实际上互联网公开网络中,比如普通用户通过浏览器使用https访问某家公司的网站时,证书会在通信过程中由服务端发送给客户端,此时客户端C如何判断这个证书是否可信呢?

如何信任一个未知的东西?人不可能凭空去信任一个不认识的人,通常需要有另一个已经熟知的人做介绍。计算机领域也一样。信任需要首先有一个基础的信任集合,然后这个集合可以告诉客户端哪些人可以信任。这个集合被称为信任根。比如在通过浏览器访问https网站的过程中,系统中已经内置了包含了一些CA(Certificate authority)的证书,这些证书已经被假定为可信。CA是指颁发证书的机构,在这里不做过多介绍。

有了信任根之后就可以建立信任链。其基础想法是:如果客户端已经相信了A,A向客户端承诺B可信,那么客户端也就可以相信B。通过这种链条机制,客户端可以判断一个新的陌生的通信方是否可信。

A如何承诺B可信?A需要传达出的信息A信任B</

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值