带你读《2022技术人的百宝黑皮书》——HTTPS的原理浅析与本地开发实践(10)

简介: 带你读《2022技术人的百宝黑皮书》——HTTPS的原理浅析与本地开发实践(10)

带你读《2022技术人的百宝黑皮书》——HTTPS的原理浅析与本地开发实践(9)https://developer.aliyun.com/article/1340621?groupCode=taobaotech


概念汇总

 

以上我们介绍了impeller要解决的问题、他的目标、架构和渲染细节。目前该项目的现状如下:

 

 

概念

 

名称

 

解释

 

TLS(Transport Security)/SSL(Sec ure Sockets Layer)

 

Layer

 

传输层安全协议/安全套阶层

---

OpenSSL —— Cryptography and SSL/TLS Toolkit

openssl是一个功能丰富且自包含的开源安全工具箱

它提供的主要功能有:SSL协议实现( 包括SSLv2SSLv3TLSv1)、大量软算法(对称/非对称/摘要)、大数运算、非对称算法 密钥生成、ASN.1编解码库、证书请求(PKCS10)编解码、数字证书编解码、CRL编解码、OCSP协议、数字证书验证、PKCS7标  准实现和PKCS12个人数字证书格式实现等功能。

Message Digest

信息摘要

也称特征值,它是将一段很长的数据信息,通过hash函数(MD5 sha 1等)计算,得到一串长度“较短”且“定长”的短数值, 来作为这段数据独一无二的特征值。该过程不可逆。

Digital Signature

数字签名

使用用户的私钥(private key)对信息摘要进行加密,生成的信息。私钥 + 信息摘要 = 数字签名。

Digital Certificate

数字证书

由某个被信任的机构(CA)签发、认证用户身份的数字文件。CA 私钥 + 认证用户的基础信息 + 认证用户的公钥 = 数字证书

CRT/CER(Certificate)

证书

经权威授权机构数字签名,包含公开密钥的拥有者信息以及公开密钥的文件,是权威机构颁发给网站的可信凭证。最简单的证书包含一个公开密钥、证书名称以及证书授权中心的数字签名。CRT常见于Linux系统,内容常用PEM,也有DER编码,CER常见于Windows系统,内容常用DER编码,也有PEM编码。

X.509

证书标准

定义证书中需要包含的内容c/rfc5280.txt

——

https://www.ietf.org/rf-

PEM(

Privacy Enhanced Mail)

X.509证书的编码格式

文本格式,以"-----BEGIN..."开头, "-----END..."结尾,内容是

BASE64编码。

PEM转为DER :openssl x509 -in cert.crt -outform der -out cert.der

CER(Distinguished Encoding Rules)

X.509证书的编码格式

二进制格式,不可读。

DER转为PEM :openssl x509 -in cert.crt -inform der

-outform pem -out cert.pem

CA(

Certificate Authority)

数字证书颁发机构/证书授权中心

CA认证中心作为电子商务交易中受信任的第三方,承担公钥体系中公钥合法性检验的责任。

CSR(Certificate Signing Request)

证书签名请求

它包含了您的服务器信息和公司信息。申请证书时需要将您证书的CSR文件提交给CA认证中心审核,CA中心对CSR文件进行根证  书私钥签名后会生成证书公钥文件(即签发给您的SSL证书)

KEY

存放私钥或者公钥的文件

---

SAN(Subject Alternative Names)

---

可以使用一个数字证书绑定多个通用名称(即使互不相关的名称)。参加上面的手动创建CSR

 

 

参考资料

 

  1. https://www.cloudflare.com/zh-cn/learning/ssl/keyless-ssl/
  2. https://www.cloudflare.com/zh-cn/learning/ssl/how-does-ssl-work/
  3. https://www.ssl.com/zh-CN/常见问题/什么是x-509证书/#
  4. https://www.cloudflare.com/zh-cn/learning/ssl/keyless-ssl/
  5. https://zh.wikipedia.org/wiki/Curve25519
  6. https://zh.wikipedia.org/wiki/SHA家族
  7. https://zh.wikipedia.org/wiki/橢圓曲線迪菲-赫爾曼金鑰交換

 

附件

 

  1. HTTP数据传输过程文件
  2. HTTPS秘钥协商&数据传输过程文件
  3. 解密HTTPS传输数据的文件

 

团队介绍

 

我们是大淘宝-天猫校园前端团队,天猫校园业务旨在整合阿里巴巴生态业务赋能校园,协助高校商业、服务、后勤数字化升级,打造校园生活新方式。业务技术形态包含线上的官旗小程序、互动h5项目等,线下有零售、共享业务等,业务多种多样,有挑战有机会,欢迎您的加入。

相关文章
|
3天前
|
安全 网络协议 应用服务中间件
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
|
3天前
|
缓存 安全 算法
网络原理 HTTP _ HTTPS
网络原理 HTTP _ HTTPS
15 0
|
3天前
|
安全 网络协议 算法
【计算机网络】http协议的原理与应用,https是如何保证安全传输的
【计算机网络】http协议的原理与应用,https是如何保证安全传输的
|
3天前
|
SQL DataWorks Java
DataWorks操作报错合集之在阿里云 DataWorks 中,代码在开发测试阶段能够成功运行,但在提交后失败并报错“不支持https”如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
26 1
DataWorks操作报错合集之在阿里云 DataWorks 中,代码在开发测试阶段能够成功运行,但在提交后失败并报错“不支持https”如何解决
|
3天前
|
Web App开发 前端开发 Java
SpringBoot配置HTTPS及开发调试
在实际开发过程中,如果后端需要启用https访问,通常项目启动后配置nginx代理再配置https,前端调用时高版本的chrome还会因为证书未信任导致调用失败,通过摸索整理一套开发调试下的https方案,特此分享
21 0
SpringBoot配置HTTPS及开发调试
|
3天前
|
安全 网络协议 算法
秒懂HTTPS接口(原理篇)
【4月更文挑战第24天】秒懂HTTPS接口(原理篇)
45 4
秒懂HTTPS接口(原理篇)
|
3天前
|
安全 网络协议 网络安全
网络原理(5)--HTTPS是如何进行加密的
网络原理(5)--HTTPS是如何进行加密的
23 0
|
3天前
|
运维 安全 Linux
CA认证与HTTPs原理介绍
CA认证与HTTPs原理介绍
42 2
|
3天前
|
安全 网络协议 算法
是时候理解下HTTPS的原理及流程了
是时候理解下HTTPS的原理及流程了
26 0
|
3天前
|
安全 搜索推荐 数据安全/隐私保护
深入探讨HTTPS协议的原理和工作流程
【2月更文挑战第10天】
47 4
深入探讨HTTPS协议的原理和工作流程