加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.52wenzhou.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 酷站推荐 > 酷站 > 正文

GoLang:你真的了解 HTTPS 吗?

发布时间:2020-03-03 18:33:58 所属栏目:酷站 来源:站长网
导读:副标题#e# 一直以来,在实验室甚至整个公司特别强调安全和隐私,近半年,笔者在用 GoLang 开发智能边缘计算设备的网络通信项目时,常被要求务必重视通信的安全和隐私。期间,对接了多个合作方,有的要求公网下要防止域名劫持,有的要求客户端上报要带证书啊

智库百科对数字证书的解释是:

数字证书也称公开密钥证书,是指用于电子信息活动中电子文件行为主体的验证和证明,并可实现电子文件保密性和完整性的电子数据。数字证书是一个经证书认证中心(Certification Authority,简称 CA)发行的文件。

数字证书包含有行为主体信息和证书认证机构的数字签名。数字签名是指以电子形式存在,可依附在电子文件中用于辨识电子文件的签署者及表示对该电子文件内容负责所使用的电子数字标识。

 

抓重点:数字证书用于主体身份验证。

首先,数字证书=主体信息+数字签名。

Windows 下,我们可以在 Chrome 浏览器上点击地址栏的“锁”标记后会出现下拉框,接着点击“证书”即可看到通过 HTTPS 访问该服务器时的数字证书。具体操作如下:

GoLang:你真的了解 HTTPS 吗?

证书“常规”页面,是关于该证书的一个笼统介绍,包括签发该证书的 CA 机构、该证书绑定的域名(颁发给)、证书有效期。

证书“详细信息”页面,以键值对形式展示了这张证书的完整内容。(后文将详细介绍证书内容)

证书的“证书路径”,以层级结构展示了从该证书绑定的域名一直到根证书的路径,这就是证书链。(后文会展开介绍证书链)

GoLang:你真的了解 HTTPS 吗?

看完了 Chrome 浏览器上的证书,在让我们通过 Wireshark 抓包来来看看数字证书:

GoLang:你真的了解 HTTPS 吗?

对比 Chrome 上看到的数字证书和 Wireshark 抓包得到的数字证书,可以看到两者呈现的证书内容是一致的。总结来看,一张完整的数字证书包括:

主体的必要信息:版本(version)、序列号(serialNumber)、签名算法(signatureAlgorithm)、颁发者(issuer)、有效期(validity)、使用者(subject)、公钥信息(subjectPublicKeyInfo)

主体的扩展信息(extension):如密钥标识符、证书策略等

数字签名(signature),也称指纹

抽象为下图:

GoLang:你真的了解 HTTPS 吗?

2.  为什么是数字证书呢?

HTTPS 已经对通信数据进行了加密,为什么还要验证身份?说好的“人与人之间最基本的信任呢?”

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读