Netty使用SSL实现双向通信加密

最近项目有个需求,TCP服务器实现基于证书通信加密,之前没做过,花了一些时间调研,今天整理下。
SSL(Secure Sockets Layer 安全套接字协议)

1、原理

在这里插入图片描述

算法原理

简而言之就是非对称加密算法
私钥自己持有,公钥发给对方,对方在发送信息的时候使用公钥进行加密数据,当接收到数据之后使用私钥进行解密。

CA原理

数字证书也就是你的身份证
CA 也叫证书颁发中心,可以类比为公安局,公安局可以对你发放身份证。
拿着你的身份证去CA验证。

验证原理

先预想一个场景,如果有10台计算机,10台计算机需要记住相互之间的公钥(publickey),
那有100台计算机,1000台呢? 他们之间都需要记住相互的公钥吗?
答案肯定是不能,那如何解决这些问题呢?
其实很简单,有个第三方中介机构。记住了这些1000台的公钥相对应的资料。
这种机构称为认证机构(Certification Authority, CA)。
CA开一个证明这是计算机A的信息,发给B计算机。
B计算机通过CA的证明,可以确认这是A计算机的信息。

◆ 如何生成证书?
A计算机将自己的【公钥A】给CA
CA用自己的【私钥CA】给【公钥A】加密,生成【数字签

相关推荐

  1. Android binder 匿名服务实现双向通信

    2024-01-08 00:36:02       36 阅读
  2. 使用Netty实现Socket网络编程

    2024-01-08 00:36:02       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-08 00:36:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-08 00:36:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-08 00:36:02       82 阅读
  4. Python语言-面向对象

    2024-01-08 00:36:02       91 阅读

热门阅读

  1. jdk9之后springboot项目访问外置jar包配置

    2024-01-08 00:36:02       55 阅读
  2. metartc5_jz源码阅读-yang_push_h264_package_stap_a

    2024-01-08 00:36:02       81 阅读
  3. 11.21 校招 实习 内推 面经

    2024-01-08 00:36:02       63 阅读
  4. 【.NET Core】异步编程模式

    2024-01-08 00:36:02       50 阅读
  5. React Hooks之useState、useRef

    2024-01-08 00:36:02       53 阅读
  6. Kafka 基本概念和术语

    2024-01-08 00:36:02       62 阅读
  7. Python 变量与命名规则

    2024-01-08 00:36:02       57 阅读
  8. 浮点数精度问题

    2024-01-08 00:36:02       61 阅读
  9. 机器学习的算法简单介绍-朴素贝叶斯算法

    2024-01-08 00:36:02       53 阅读