SSL证书介绍

简介: SSL证书相关介绍申请

SSL证书是什么东西?

QQ图片20230201101259.png

为什么需要证书?


数字证书原理逻辑链条:


1.加密由加密算法 + 密钥组成,加密算法公开,于是密钥分发成了关键(可以试想,若是加密算法私有,自然就没有密钥分发及之后的问题,代之就只加密算法本身的安全问题)

2.对称加密密钥不易分发,也不能每次都一样

3.非对称加密通信,客户端持有服务端的公钥,但服务商的公钥谁都可以得到,服务商给我发的消息,别人虽然不能改,但也可以截获并解密。

4.所以,纯粹的对称加密 和 非对称加密 都是无法做到安全通信的。因此,先使用非对称加密 约定一个对称密钥,再用对称加密交流

5.问题就变成了:客户端如何拿到服务商的公钥? ==> 服务商的公钥如何安全的在网络上传输呢?==> 服务商不直接分发公钥,而是分发经CA私钥加密过的数字证书(包含公钥+服务商域名等信息)。客户端持有CA的公钥,解密后拿到服务商的公钥。

6.从概念上来讲,数字证书是用来验证网络通信参与者的一个文件。这和学校颁发 给学生的毕业证书类似。在学校和学生之间,学校是可信第三方 CA,而学生是通信 参与者。如果社会普遍信任一个学校的声誉的话,那么这个学校颁发的毕业证书,也 会得到社会认可。参与者证书和 CA 证书可以类比毕业证和学校的办学许可证。

7.CA的公钥如何安全的在网络上传输呢?给CA 也颁发证书,然后大家都无条件信任root CA,在操作系统、浏览器发布的时候便嵌入了root CA。

QQ图片20230201101656.png

就好比谍报战里的接头戏码

1.两个彼此认识的特工接头会轻松一点,双方可能会经常变换下接头方式

2.第一次跟新来的特工接头,上级会告诉你xx点去xx等一个手里拿着xx的人,接头暗号是“hello/world”。此次,双方都认识的上级是CA,“hello/world” 便是对方的CA证书。


证书

  1. 证书有什么,Chrome可以通过”settings ==> advanced setting ==> https/ssl ==> 管理证书” 查看证书内容。证书基本上是一个文本文件。
  2. 服务商的公钥
  3. 服务商的信息
  4. 对上述信息算一个签名,用ca自己的私钥加密一下
  5. 如何验证证书?我拥有ca的公钥,对证书上的信息做一个签名, 解密证书上的签名,比对。
  6. 如果两个签名一样,签名一样,说明证书没被篡改
  7. 签名可以用ca公钥正确解密,说明是用ca私钥加密的,即证书是ca颁发的
  8. 结论,证书是可信的,那么证书上的内容,尤其是服务商的公钥是可信的。就好像,毕业证上学校公章是可信的,那么可以相信这个学生的学历是可信的。

总结一下https涉及到的一些加密知识

  1. 哈希,将任意长度的数据转化为固定长度的,验证数据是否被篡改
  2. 对称加密,加密和解密使用同一个密钥,对称加密的优点是速度快,缺点是密钥管理不方便,必须共享密钥
  3. 非对称加密,缺点是速度慢,优点是双方无需共享同一个密钥,密钥管理很方便
  4. 数字证书,提供可信的服务商公钥

其它

上文提到的都是单向非对称加密,对于安全性很高的场景(比如网银), 不仅客户端要验证服务端的合法性,服务端也要验证每个访问的客户端的合法性,对于这种场景,往往给每个用户发一个U盘,里面装的就是客户端的公钥和私钥对,用于双向非对称加密。


JoySSL官网:

JoySSL-SSL证书申请

相关文章
|
2月前
|
监控 安全 网络协议
Cisco Identity Services Engine (ISE) 3.5 发布 - 基于身份的网络访问控制和策略实施系统
Cisco Identity Services Engine (ISE) 3.5 发布 - 基于身份的网络访问控制和策略实施系统
366 1
Cisco Identity Services Engine (ISE) 3.5 发布 - 基于身份的网络访问控制和策略实施系统
|
存储 分布式计算 监控
【Flume】Flume 监听日志文件案例分析
【4月更文挑战第4天】【Flume】Flume 监听日志文件案例分析
|
Java 调度 Android开发
构建高效Android应用:探究Kotlin多线程编程
【2月更文挑战第17天】 在现代移动开发领域,性能优化一直是开发者关注的焦点。特别是在Android平台上,合理利用多线程技术可以显著提升应用程序的响应性和用户体验。本文将深入探讨使用Kotlin进行Android多线程编程的策略与实践,旨在为开发者提供系统化的解决方案和性能提升技巧。我们将从基础概念入手,逐步介绍高级特性,并通过实际案例分析如何有效利用Kotlin协程、线程池以及异步任务处理机制来构建一个更加高效的Android应用。
|
前端开发 JavaScript 网络协议
Web开发的历史发展技术演变
本文对Web开发的历史发展的了解很有裨益,推荐给大家。本文尝试从历史发展角度,说说各种研发模式的优劣。 一、简单明快的早期时代,二、后端为主的 MVC 时代,三、Ajax 带来的 SPA 时代,四、前端为主的 MV* 时代,五、Node 带来的全栈时代
2372 0
Web开发的历史发展技术演变
|
JSON 监控 安全
JSONP 被劫持后会对用户造成哪些危害?
JSONP 被劫持后可能对用户造成严重的危害,涉及信息安全、财产安全和隐私保护等多个方面。因此,在使用 JSONP 进行跨域数据交互时,必须采取有效的安全措施来防止劫持事件的发生。
313 7
|
机器学习/深度学习 测试技术
ACL杰出论文奖:GPT-4V暴露致命缺陷?JHU等发布首个多模态ToM 测试集,全面提升大模型心智能力
【10月更文挑战第6天】约翰斯·霍普金斯大学等机构提出了一项荣获ACL杰出论文奖的研究,旨在解决大模型在心智理论(ToM)上的不足。他们发布了首个MMToM-QA多模态ToM测试集,并提出BIP-ALM方法,从多模态数据中提取统一表示,结合语言模型进行贝叶斯逆规划,显著提升了模型的ToM能力。这一成果为机器与人类自然交互提供了新思路,尽管仍面临一些局限性和技术挑战。论文详情见:https://arxiv.org/abs/2401.08743。
280 6
|
存储 安全 算法
CPU资源
【10月更文挑战第2天】CPU资源
272 6
|
存储 监控 安全
智能家居安全漏洞分析与防护策略
随着物联网技术的快速发展,智能家居系统已成为现代生活的一个趋势。然而,随之而来的安全问题也日益突出。本文将深入探讨智能家居系统中存在的安全漏洞,并针对性地提出一系列有效的防护措施。通过实际案例分析,旨在提升用户的安全防护意识,确保智能家居环境的安全性和可靠性。
307 27
|
运维 监控 自动驾驶
什么是系统的鲁棒性?
本文探讨了系统鲁棒性的重要性及其评估方法。鲁棒性指系统在异常情况和不确定性因素下保持稳定运行的能力,是系统稳定性和可靠性的关键指标。文章从系统设计、自我修复及数据处理三方面评估鲁棒性,并提出预防、检测与恢复的策略。通过具体措施如代码质量、异常预防、监控和冗余备用等,提升系统在各种挑战下的表现。这些策略不仅理论性强,也与日常开发实践紧密相连。
1042 0